diff options
Diffstat (limited to 'platform/working-on-the-master-branch.md')
-rw-r--r-- | platform/working-on-the-master-branch.md | 67 |
1 files changed, 43 insertions, 24 deletions
diff --git a/platform/working-on-the-master-branch.md b/platform/working-on-the-master-branch.md index 0f91eaf..16dae32 100644 --- a/platform/working-on-the-master-branch.md +++ b/platform/working-on-the-master-branch.md @@ -1,16 +1,20 @@ # Working on the master branch + ## Intro + This is a quick howto for working on the 'master' branch. Working on the branch is easy as we maintain all changes through gerrit.automotivelinux.org. If you are unfamiliar with gerrit, please read these fine how-to pages were put together from the -Mediawiki community here: https://www.mediawiki.org/wiki/Gerrit/Tutorial . This covers the basics very well. Of course we'll work with gerrit.automotivelinux.org instead so apply likewise. +Mediawiki community here: <https://www.mediawiki.org/wiki/Gerrit/Tutorial> . This covers the basics very well. Of course we'll work with gerrit.automotivelinux.org instead so apply likewise. ## Installation of tools + Install `git` with your distributions package manager. A very useful tool is "git-review" (cmdline is then `git review`). Install it from your distro or with `sudo pip install git-review`. ## Prerequisites + It is important to setup git and gerrit properly (see the Tutorial page mentioned above): * prereq #1) make sure git is properly setup with name/email @@ -20,38 +24,44 @@ It is important to setup git and gerrit properly (see the Tutorial page mentione Follow these steps to submit a change to the 'master' branch: -1) cloning the (tip of the) branch - ``` +1. cloning the (tip of the) branch + + ```bash repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo repo sync ``` -2) Change the recipe in question (one change at a time - small is better) - ``` +1. Change the recipe in question (one change at a time - small is better) + + ```bash vi meta-xyz/recipe-foo/bar/baz.bb ``` -3) Do a a few builds and tests (try 2 architectures if possible) - ``` +1. Do a a few builds and tests (try 2 architectures if possible) + + ```bash source meta-agl/scripts/aglsetup.sh .... agl-all-features bitbake agl-demo-platform ``` -4) once satisfied do commit your change as usual in git +1. once satisfied do commit your change as usual in git Make sure to do a proper commit message: - http://chris.beams.io/posts/git-commit/ - ``` + <http://chris.beams.io/posts/git-commit/> + + ```bash git commit -s <enter proper commit message> ``` -5) All repos have .gitreview files already, so now it is just - ``` +1. All repos have .gitreview files already, so now it is just + + ```bash git review ``` -6) (optional, but highly recommended!) Reset to gerrit/master - ``` +1. (optional, but highly recommended!) Reset to gerrit/master + + ```bash git checkout master git reset --hard gerrit/master ``` @@ -59,45 +69,54 @@ Follow these steps to submit a change to the 'master' branch: It helps during the review process as gerrit would otherwise enforce the whole series of patches to be reviewed/merged together (2nd depends on 1st patch). -7) Rinse (=6) and repeat (=2-5) +1. Rinse (=6) and repeat (=2-5) ## Using git review to review/test-build a specific change in gerrit + 'git review' is also useful if you want to review a change. Example for meta-agl: -``` + +```bash repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo repo sync cd meta-agl/ git review -d 8233 ``` + This will pull-down change 8233. Now we can build with it applied: -``` + +```bash cd .. source ... bitbake ... -```` +``` ## Using gerrit to amend a changeset while in review + The same workflow applies if you want to _amend_ a changeset while it is in review (not merged, yet): -``` + +```bash cd meta-agl/ git review -d 8233 ``` + This will pull-down change 8233. You can now edit a file: -``` + +```bash vi meta-xyz/recipes-foo/bar/baz.bb git commit -s --amend ``` Don't forget a test build -``` + +```bash cd .. source meta-agl/scripts/aglsetup.sh ..... agl-all-features bitbake ... # e.g. agl-demo-platform ``` Finally call git review to upload the change -``` -git review -``` +```bash +git review +```
\ No newline at end of file |