Labs/Jetpack/FlightDeck/Contribution: Difference between revisions

From MozillaWiki
< Labs‎ | Jetpack‎ | FlightDeck
Jump to navigation Jump to search
Line 19: Line 19:
= How to commit =
= How to commit =


#checkout to the branch you want to fix  
#checkout and update the branch you want to fix  
#*master for current development <pre>git checkout master; git pull main master</pre>
#*master for current development <pre>git checkout master; git pull main master</pre>
#*release-# branches for fixing the release <pre>git checkout release-1.0a3; git pull origin release-1.0a3</pre>
#*release-# branches for fixing the release <pre>git checkout release-1.0a3; git pull origin release-1.0a3</pre>

Revision as of 01:38, 15 February 2011

Overview

  • Changes should follow Style Guide
  • All changes should be accompanied with test (front-end tests soon)
  • Development is done on Github, but certainly we don't want to limit the user experience to github only. Feel free to use the server you like the most.
  • Every change should have a corresponding bug in bugzilla
  • Every change should be developed in a specific branch named bug-12345-human_readable where 123245 is a number of the bug
  • There is a number of developers who are able to merge and push from the private branch to the main repository
  • Production branch is for production only and it is merged from devel only
  • Installation instructions

If you have questions, ask in #flightdeck on IRC or on the Jetpack mailing list. You may also like to read the Code Workflow document.

We do use mkvirtualenv (check the Installation instructions), to get into the flightdeck environment please run

workon flightdeck

How to commit

  1. checkout and update the branch you want to fix
    • master for current development
      git checkout master; git pull main master
    • release-# branches for fixing the release
      git checkout release-1.0a3; git pull origin release-1.0a3
  2. fetch current remote branches
    git fetch
  3. Findor create bug in bugzilla
  4. create the branch you want to work on
    git checkout -b bug-12345-name_of_the_feature
  5. code
  6. commit changes
  7. push to your repository
    git push origin bug-12345-name_of_the_feature
  8. provide the link to the commit in bugzilla
  9. switch back to master branch
    git checkout master

Ad 4. Sometimes you may want to work on some else's repository do following instead:

git remote add {username} {user_read_repository_at_github}
git fetch {username}
git checkout -b bug-12345-name_of_the_feature {username}/bug-12345-name_of_the_feature

If this is a fix to the current production system and it has to be implemented immediately please use the hotfix prefix instead of the bug one. Like hotfix-12345-name_of_the_fix.

Merging

Please always add --no-ff if using git merge