The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Contribution
Line 68: | Line 68: | ||
This will now give you a review URL that you should follow for reviews. | This will now give you a review URL that you should follow for reviews. | ||
+ | |||
+ | === Responding to reviews === | ||
+ | |||
+ | There is bound to be a lot of things wrong with your submission, so here is how you make and send an updated change for review. | ||
+ | |||
+ | First, do your modifications, git add, git rm, etc. | ||
+ | |||
+ | Then, you will need to amend your changes to your previous commit: | ||
+ | |||
+ | * First off, visit the page for your change, and copy the field called 'Change-id:', you will need this. In the following this is called CHANGEID | ||
+ | * Run the following command: | ||
+ | |||
+ | <pre> | ||
+ | git commit -s --amend | ||
+ | </pre> | ||
+ | |||
+ | Below the signed-off-by header, add the following | ||
+ | |||
+ | <pre> | ||
+ | Change-Id: CHANGEID | ||
+ | </pre> | ||
+ | |||
+ | Save and exit the editor. Now as before, send the change to Gerrit: | ||
+ | |||
+ | When your change is ready for commit: | ||
+ | |||
+ | <pre> | ||
+ | git push origin HEAD:refs/for/master | ||
+ | </pre> | ||
+ | |||
+ | This will then mean that your new patchset will be appearing at the same review page as before, in the updated form. | ||
== Reviewing == | == Reviewing == | ||
You can help reviewing patches for Mer packages on the [http://review.merproject.org/ the Mer Gerrit]. Click "All" -> "Open" to see what patches are currently proposed. | You can help reviewing patches for Mer packages on the [http://review.merproject.org/ the Mer Gerrit]. Click "All" -> "Open" to see what patches are currently proposed. |
Revision as of 06:54, 10 November 2011
Contents |
Contributing to packages
Our repositories
You can view our repositories at Mer gitweb
Signed-off-by
The Mer project uses the signed-off-by language and process, used by the Linux kernel, to give us a clear chain of trust for every patch received.
Linux Kernel Certificate of Origin v 1.1 "By making a contribution to this project, I certify that: The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it. I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved."
We have the same requirements for using the signed-off-by process as the Linux kernel has.
In short, you need to include a signed-off-by tag in every patch:
Signed-off-by: this is a developer's certification that he or she has the right to submit the patch for inclusion into the project. It is an agreement to the Developer's Certificate of Origin (above). Code without a proper signoff cannot be merged into the mainline.
Initial setup
Mer uses the Gerrit code review system and has all packages in the Core stored within git repositories.
First thing you should do is to register yourself on the Mer Gerrit and assign yourself a username, in the following referred to as USERNAME. You can use a Google account or OpenID to authenticate yourself.
You then need to generate yourself a SSH key and upload it on the Gerrit SSH keys page
Making changes
With the following command, pick out a package you'd like to contribute to - in the following denoted as REPO.
ssh -p 29418 USERNAME@review.merproject.org gerrit ls-projects
Prominent examples are:
mer/release-tools - Release tools and fakeobs
mer/project-core - Project core description, configurations and package contents (like what git corresponds to what revision)
Then check out the git repository:
git clone ssh://USERNAME@review.merproject.org:29418/REPO
Now do your changes to the repository as if you were working with a git repository, git add/rm/commit. When committing, remember to add '-s' option - this adds a Signed-off-by line and is required for Mer contribution and Gerrit will not accept patches without.
When your change is ready for commit:
git push origin HEAD:refs/for/master
This will now give you a review URL that you should follow for reviews.
Responding to reviews
There is bound to be a lot of things wrong with your submission, so here is how you make and send an updated change for review.
First, do your modifications, git add, git rm, etc.
Then, you will need to amend your changes to your previous commit:
- First off, visit the page for your change, and copy the field called 'Change-id:', you will need this. In the following this is called CHANGEID
- Run the following command:
git commit -s --amend
Below the signed-off-by header, add the following
Change-Id: CHANGEID
Save and exit the editor. Now as before, send the change to Gerrit:
When your change is ready for commit:
git push origin HEAD:refs/for/master
This will then mean that your new patchset will be appearing at the same review page as before, in the updated form.
Reviewing
You can help reviewing patches for Mer packages on the the Mer Gerrit. Click "All" -> "Open" to see what patches are currently proposed.