Difference between revisions of "Information for OPL maintainers"

From WeBWorK_wiki
Jump to navigation Jump to search
Line 7: Line 7:
 
# Go to [http://github.com github] and create an account (if you do not have one already). It is free.
 
# Go to [http://github.com github] and create an account (if you do not have one already). It is free.
 
# Contact one of principal OPL maintainers with your github login to have them add you the list of committers
 
# Contact one of principal OPL maintainers with your github login to have them add you the list of committers
# If you do not have an ssh key (look for a file ending in ".pub" in your <code>~/.ssh</code> directory
+
# If you do not have an ssh key (if you have a file ending in ".pub" in your <code>~/.ssh</code> directory, you can skip this step), create one with the command <code>ssh-keygen -t rsa</code>. It will ask you for a passphrase (twice): just hit enter each time.
  +
# Login to your github account, and
  +
## click on the settings icon (looks like tools near the upper right corner of the page)
  +
## Click "SSH Keys" in the left sidebar
   
 
==When Fixing a Bug==
 
==When Fixing a Bug==

Revision as of 18:01, 10 March 2013

Here is information for OPL maintainers.


Initial Setup

The OPL is kept as a git repository at github. There is a little work to do to get set up, but then committing your bug fixes back to the main repository is fairly easy. Steps in this section only need to be done once.

  1. Go to github and create an account (if you do not have one already). It is free.
  2. Contact one of principal OPL maintainers with your github login to have them add you the list of committers
  3. If you do not have an ssh key (if you have a file ending in ".pub" in your ~/.ssh directory, you can skip this step), create one with the command ssh-keygen -t rsa. It will ask you for a passphrase (twice): just hit enter each time.
  4. Login to your github account, and
 ## click on the settings icon (looks like tools near the upper right corner of the page)
 ## Click "SSH Keys" in the left sidebar

When Fixing a Bug

  1. cd to your copy of the OPL git repository
  2. git pull -- this brings in any changes made to OPL problems
  3. Fix a bug
  4. git commit -a, and give a useful commit message. In particular, if this is a bug from bugzilla, mention that you fixed the bug with the bug number. Note, this will commit changes to *every* file you have modified. If you see that more files are going to be committed which you did not intend, leave the commit message blank; it will abort the commit.
  5. Alternatively, if you want to only commit a change to a particular file, first give `git add path/to/file`, and then `git commit`
  6. git push -- this sends your changes back to github
  7. Mark the bug as fixed in bugzilla with a brief note about the fix

Auxilliary Commands

On your home machine, cd to the OPL git repository. From there you can

  • git status -- shows a list of problems which have been modified on your machine
  • git diff -- shows diffs for all problems which have been modified on your machine