How to contribute code: Difference between revisions
No edit summary |
|||
Line 16: | Line 16: | ||
== Code something == | == Code something == | ||
<div style="display: table; margin: 1em; padding: 0.5em; border: 1px solid #ccc; background-color: #f9f9f9"> | |||
Never, never, never work in master branch, when you are submitting new code. | |||
Always create a new branch for each change, code feature or bug fix. | |||
The master branch is only to merge changes, not to work. | |||
</div> | |||
To fix a bug, or code a new feature, three operations are needed: | To fix a bug, or code a new feature, three operations are needed: | ||
# code it | # code it |
Revision as of 15:49, 11 April 2015
This guide explains how to contribute code to a Nasqueron project.
We use Phabricator for tasks and code reviews, our instance is called DevCentral and is accessible at https://devcentral.nasqueron.org.
In a nutshell, to submit a change, .
Pull the repository
On DevCentral, go to Diffusion. Each repository will offer you a clone command.
For example, it could be:
git clone ssh://git@github.com/nasqueron/someproject
Internal projects are directly hosted on DevCentral. In this case, you need to add your SSH key to the settings.
If the repository is on GitHub but not on DevCentral, please request it to be added. For that, create a task on DevCentral and add DevCentral as project You can use the priority Unbreak now! if you already have a change to review, high if you plan to do it in the next 12 hours, normal for 24 hours, low for one week.
Code something
Never, never, never work in master branch, when you are submitting new code.
Always create a new branch for each change, code feature or bug fix.
The master branch is only to merge changes, not to work.
To fix a bug, or code a new feature, three operations are needed:
- code it
- commit it
- review it
Code it
Before to start to code, create a new branch:
git checkout -b feature/something-awesome
If you fix a bug, use the number of the bug on DevCentral:
git checkout -b bug/T434
Then code something, test it, reread it.
Commit it
When you're ready, you can commit it.
Your commit message should use the following format:
- a title, as short as possible, with 43 max characters recommended, 55 characters as soft limit, 72 as hard limit
- some paragraphs, but wrap lines < 72 characters. You can extend at 80 (soft limit) or 100 (hard limit) if really needed.
Review it
arc diff
This will send your change on DevCentral, and allow the review process to start
You'll find more information about this on the Phabricator documentation.
Meanwhile review, you can go to another branch (git checkout master ; git checkout -b feature/another-awesome-change) and offer another change (if your second change depends of the first, skip the checkout master).
Once reviewed, your change will be live in the master repository. Cheers!
Review code
Reviews are accessible at Differential.
In the bottom of a revision page, you'll find a action menu to accept a revision or request changes.
You can also comment inline, clicking on line numbers.