X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=HACKING;h=c2e841ab52612aaf6d5a0e7f0b8e8516429791dd;hb=7462179c384ab94abc1cf4db8128e5a0a032ddae;hp=47169ee72552930bc2e04cdf1d68245be381b23d;hpb=a2935397b48ce2a1bbb8e49258b340479e0b9c8e;p=openocd
diff --git a/HACKING b/HACKING
index 47169ee7..c2e841ab 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,39 @@ 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.
+ -# Create an SSH public key following the directions on github:
+ https://help.github.com/articles/generating-ssh-keys . You can skip step 3
+ (adding key to Github account) and 4 (testing) - these are useful only if
+ you actually use Github or want to test whether the new key works fine.
+ -# Add this new SSH key to your Gerrit account:
+ go to 'Settings' > 'SSH Public Keys', paste the contents of
+ ~/.ssh/id_rsa.pub into the text field (if it's not visible click on
+ 'Add Key ...' button) and confirm by clicking 'Add' button.
-# 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,7 +91,7 @@ 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
@@ -107,22 +112,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 +163,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.
*/