git-for-lieutenants
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
git-for-lieutenants [2012/11/02 17:20] – smilauer | git-for-lieutenants [2012/12/04 17:00] – Updated to new repo structure bp | ||
---|---|---|---|
Line 14: | Line 14: | ||
====== Reference repository ====== | ====== Reference repository ====== | ||
On the reference repository, two main branches exist: | On the reference repository, two main branches exist: | ||
- | * '' | + | * '' |
- | * '' | + | * '' |
- | Individual developpers typically clone the main repository, create a topic branch, derived from '' | + | Individual developpers typically clone the main repository, create a topic branch, derived from '' |
The sequence looks basically like this: | The sequence looks basically like this: | ||
Line 23: | Line 23: | ||
# clone reference repo | # clone reference repo | ||
$ git clone http:// | $ git clone http:// | ||
+ | # Note: when a repository is cloned, git automatically creates a master branch that tracks origin/ | ||
$ cd oofem.git | $ cd oofem.git | ||
- | # track remote develop branch on reference repo; it will became active one | ||
- | $ git checkout -b develop origin/ | ||
# create a new brach for a new development | # create a new brach for a new development | ||
$ git checkout -b featureA | $ git checkout -b featureA | ||
Line 40: | Line 39: | ||
If you receive a patch over e-mail that you need to integrate into your project, you need to apply the patch in your topic branch to evaluate it. Please see detailed descption of this topic in [[http:// | If you receive a patch over e-mail that you need to integrate into your project, you need to apply the patch in your topic branch to evaluate it. Please see detailed descption of this topic in [[http:// | ||
- | The Lieutenants of the Git project tends to namespace these branches as well — such as c_name/ | + | The Lieutenants of the Git project tends to namespace these branches as well — such as c_name/ |
#create a feature branch | #create a feature branch | ||
- | $ git branch c_name/ | + | $ git branch c_name/ |
# and to switch into this branch | # and to switch into this branch | ||
#git branch c_name/ | #git branch c_name/ | ||
| | ||
Or, if you want to also switch to it immediately, | Or, if you want to also switch to it immediately, | ||
- | $ git checkout -b c_name/ | + | $ git checkout -b c_name/ |
Now you’re ready to add contributed work into this topic branch and determine if you want to merge it into reference longer-term develop branch. | Now you’re ready to add contributed work into this topic branch and determine if you want to merge it into reference longer-term develop branch. | ||
Line 92: | Line 91: | ||
When all the patches for your topic are applied and committed into your branch, you can choose whether and how to integrate them into a develop reference branch. | When all the patches for your topic are applied and committed into your branch, you can choose whether and how to integrate them into a develop reference branch. | ||
- | For example, once you merged all patches to a '' | + | For example, once you merged all patches to a '' |
- | $ git push origin | + | $ git push origin |
====== Merging workflow ====== | ====== Merging workflow ====== | ||
- | In oofem project, we have two long-running branches, master and develop. '' | + | In oofem project, we have two long-running branches, master and stable. '' |
git-for-lieutenants.txt · Last modified: 2017/11/01 09:23 by bp