X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=HACKING;h=395b5b3167c5ff09f7613f4ac06e3d7ad8315d36;hp=5edf1012f6f0754358946c82a14bd39c9d9757a1;hb=79d6d3cda90c6694343bde909978069994049ab7;hpb=a6cf60c9c2387ca9f6c5a916ebf3d164554a7165 diff --git a/HACKING b/HACKING index 5edf1012f6..395b5b3167 100644 --- a/HACKING +++ b/HACKING @@ -1,10 +1,10 @@ // This file is part of the Doxygen Developer Manual /** @page patchguide Patch Guidelines -@b NB! If you're behind a corporate wall with http only access to the +\attention If you're behind a corporate wall with http only access to the world, you can still use these instructions! -@b NB2! You can't send patches to the mailing list anymore at all. Nowadays +\attention You can't send patches to the mailing list anymore at all. Nowadays you are expected to send patches to the OpenOCD Gerrit GIT server for a review. @@ -47,34 +47,33 @@ Add yourself to the GPL copyright for non-trivial changes. add a username of your choice. Your username will be required in step 3 and substituted wherever the string 'USERNAME' is found. - -# Add an SSH public key following the directions for your specific platform: - - for Windows: http://help.github.com/win-set-up-git/#_set_up_ssh_keys - - for OSX: http://help.github.com/mac-set-up-git/#_set_up_ssh_keys - - for Linux: http://help.github.com/linux-set-up-git/#_set_up_ssh_keys
- . - While these pages describe the setting up of git as well, - you should scroll down the page till you get to the section: - Next: Set Up SSH Keys, and follow the steps described. + -# Add an SSH public key following the directions on github: + https://help.github.com/articles/generating-ssh-keys -# Clone the git repository, rather than just download the source: @code - git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd + git clone git://git.code.sf.net/p/openocd/code openocd @endcode or if you have problems with the "git:" protocol, use the slower http protocol: @code - git clone http://repo.or.cz/r/openocd.git + git clone http://git.code.sf.net/p/openocd/code openocd @endcode -# Set up Gerrit with your local repository. All this does it to instruct git locally how to send off the changes. -# Add a new remote to git using Gerrit username: @code git remote add review ssh://USERNAME@openocd.zylin.com:29418/openocd.git -git config remote.review.push HEAD:refs/for/master +git config remote.review.push HEAD:refs/publish/master @endcode Or with http only: @code -git remote add review http://openocd.zylin.com/p/openocd.git -git config remote.review.push HEAD:refs/for/master +git remote add review http://USERNAME@openocd.zylin.com/p/openocd.git +git config remote.review.push HEAD:refs/publish/master +@endcode + The http password is configured from your gerrit settings - http://openocd.zylin.com/#/settings/http-password. + \note If you want to simplify http access you can also add your http password to the url as follows: +@code +git remote add review http://USERNAME:PASSWORD@openocd.zylin.com/p/openocd.git @endcode -# You will need to install this hook, we will look into a better solution: @code @@ -86,11 +85,11 @@ wget http://openocd.zylin.com/tools/hooks/commit-msg mv commit-msg .git/hooks chmod +x .git/hooks/commit-msg @endcode -@b NOTE A script exists to simplify the two items above. execute: + \note A script exists to simplify the two items above. execute: @code tools/initial.sh @endcode -With being your Gerrit username. +With @ being your Gerrit username. -# Set up git with your name and email: @code git config --global user.name "John Smith" @@ -107,22 +106,25 @@ while(!done) { run tools/checkpatch.sh to verify your patch style is ok. } @endcode - @b TIP! use "git add ." before commit to add new files. + \note use "git add ." before commit to add new files. + + Comment template, notice the short first line w/topic. The topic field + should identify the main part or subsystem the patch touches. Check + git log for examples. @code ---- example comment, notice the short first line w/topic --- -topic: short comment +topic: Short comment -longer comments over several -lines... +Longer comments over several lines, explaining (where applicable) the +reason for the patch and the general idea the solution is based on, +any major design decisions, etc... Signed-off-by: ... ------ @endcode -# Next you need to make sure that your patches are on top of the latest stuff on the server and that there are no conflicts: @code -git pull --rebase origin/master +git pull --rebase origin master @endcode -# Send the patches to the Gerrit server for review: @code @@ -155,6 +157,13 @@ master branch will be much reduced. If a contributor pushes a patch, it is considered good form if another contributor actually approves and submits that patch. +It should be noted that a negative review in Gerrit ("-1" or "-2") may (but does +not have to) be disregarded if all conditions listed below are met: + +- the concerns raised in the review have been addressed (or explained), +- reviewer does not re-examine the change in a month, +- reviewer does not answer e-mails for another month. + @section browsing Browsing Patches All OpenOCD patches can be reviewed here. */