We've decided to use "gerrit" for our code review system, making it easier for all of us to contribute with code and comments.
- Visit http://review.couchbase.org and "Register" for an account
- Review http://review.couchbase.org/static/individual_agreement.html
- Agree to agreement by visiting http://review.couchbase.org/#/settings/agreements
- If you do not receive an email, please contact us
- Check out the
- Join us on IRC at #libcouchbase on Freenode :-)
We normally don't go looking for stuff in gerrit, so you should add at
"Sergey Avseyev" <email@example.com> as a reviewer
for your patch (and I'll know who else to add and add them for you).
Contributing Using Repo Tool
Follow "Uploading Changes" guide on the site if you have some code to contribute.
All you should need to set up your development environment should be:
~ % mkdir couchbase-ruby ~ % cd couchbase-ruby ~/couchbase-ruby % repo init -u git://github.com/trondn/manifests.git -m ruby.xml ~/couchbase-ruby % repo sync ~/couchbase-ruby % repo start my-branch-name --all ~/couchbase-ruby % make
This will build the latest version of
couchbase-ruby-client libraries. You must
have a C and C++ compiler installed, automake, autoconf.
If you have to make any changes just commit them before you upload them to gerrit with the following command:
~/couchbase-ruby/client % repo upload
You might experience a problem trying to upload the patches if you've selected a different login name at http://review.couchbase.org than your login name. Don't worry, all you need to do is to add the following to your ~/.gitconfig file:
[review "review.couchbase.org"] username = YOURNAME
Contributing Using Plain Git
If you not so familiar with repo tool and its workflow there is alternative way to do the same job. Lets assume you have installed couchbase gem and libcouchbase from official packages and would you to contribute to couchbase-client gem only. Then you just need to complete gerrit registration steps above and clone the source repository (remember the repository on github.com is just a mirror):
~ % git clone ssh://YOURNAME@review.couchbase.org:29418/couchbase-ruby-client.git
~/couchbase-ruby-client % scp -p -P 29418 YOURNAME@review.couchbase.org:hooks/commit-msg .git/hooks/
Make your changes and upload them for review:
~/couchbase-ruby-client % git commit ~/couchbase-ruby-client % git push origin HEAD:refs/for/master
If you need to fix or add something to your patch, do it and re-upload
the changes (all you need is to keep
Change-Id: line the same to
allow gerrit to track the patch.
~/couchbase-ruby-client % git commit --amend ~/couchbase-ruby-client % git push origin HEAD:refs/for/master