Browse Source

docs: update HACKING to point to Gerrit

Change-Id: If79e86c731ac06aaefca1aebde40e7cb3de68e4d
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
tags/v0.6.0-rc1
Øyvind Harboe 12 years ago
parent
commit
4e80a9128e
1 changed files with 44 additions and 17 deletions
  1. +44
    -17
      HACKING

+ 44
- 17
HACKING View File

@@ -1,13 +1,22 @@
Submitting patches to the OpenOCD mailing list:
Submitting patches to the OpenOCD Gerrit server:


By the time you have read this, one supposes that
you have figured out how to clone the OpenOCD git
repository.
OpenOCD is to some extent a "self service" open source project, so to
contribute, you must follow the standard procedures to have the best
possible chance to get your changes accepted.

The procedure to create a patch is essentially:

- make the changes
- create a commit
- send the changes to the Gerrit server for review
- correct the patch and re-send it according to review feedback


Below is a basic workflow and specific instructions
to get you going with git and patches.
0. Create a Gerrit account at:


0. Clone the git repository, rather than just
http://openocd.zylin.com

1. Clone the git repository, rather than just
download the source. download the source.


git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd
@@ -17,19 +26,32 @@ the slower http protocol:


git clone http://repo.or.cz/r/openocd.git git clone http://repo.or.cz/r/openocd.git


1. Set up git with your name and email:
2. 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:

git remote add review ssh://USERNAME@openocd.zylin.com:29418/openocd.git
git config remote.review.push HEAD:refs/for/master

You will need to install this hook, we will look into a better
solution:

scp -p -P 29418 USERNAME@openocd.zylin.com:hooks/commit-msg .git/hooks/

3. Set up git with your name and email:


git config --global user.name "John Smith" git config --global user.name "John Smith"
git config --global user.email "john@smith.org" git config --global user.email "john@smith.org"


2. Work on your patches. Split the work into
4. Work on your patches. Split the work into
multiple small patches that can be reviewed and multiple small patches that can be reviewed and
applied seperately and safely to the OpenOCD applied seperately and safely to the OpenOCD
repository. repository.


while(!done) { while(!done) {
work - edit files using your favorite editor. work - edit files using your favorite editor.
run "git commit -a" to commit all changes.
run "git commit -s -a" to commit all changes.
} }


TIP! use "git add ." before commit to add new files. TIP! use "git add ." before commit to add new files.
@@ -41,16 +63,21 @@ longer comments over several
lines... lines...
----- -----


3. Next you need to make sure that your patches
5. Next you need to make sure that your patches
are on top of the latest stuff on the server and are on top of the latest stuff on the server and
that there are no conflicts. that there are no conflicts.


git pull --rebase
git pull --rebase origin/master

6. Send the patches to the Gerrit server for review.

git push review

7. Forgot something, want to add more? Just make the changes and do:


4. Generate the patch files. This will generate
patches for all commits that are on top of
the latest stuff on the server:
git commit --amend
git push review


git format-patch origin/master
Further reading:


5. Email the patches to openocd-development@lists.berlios.de
http://www.coreboot.org/Git

Loading…
Cancel
Save