20,741
edits
(→Merging Topic Branches: http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg32305.html) |
(→Resolving Conflicts: http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg32309.html) |
||
Line 420: | Line 420: | ||
But do remember to use origin/master rather than just master in git diff and git checkout -- some/file commands in that case, since your local | But do remember to use origin/master rather than just master in git diff and git checkout -- some/file commands in that case, since your local | ||
master branch will not be updated by fetch and rebase. | master branch will not be updated by fetch and rebase. | ||
=== git merge vs. rebase === | |||
Each rebase moves your local commits to be on-top of all upstream commits. | |||
For example, my local SimGear branch currently looks like this: | |||
git log output: | |||
<pre> | |||
commit 4087b34f7ebbdb54b62afb205dc2e1ca225dc68b | |||
Author: Anders Gidenstam <and...@gidenstam.org> | |||
Date: Tue Mar 29 22:44:53 2011 +0200 | |||
Experimental Nasal GC work: Added a GC thread. | |||
commit d94d1a907d6ec001ab9ba497bc03aaeff55f923c | |||
Author: Anders Gidenstam <and...@gidenstam.org> | |||
Date: Sun Oct 3 16:59:50 2010 +0200 | |||
Turn the creation of a variable without the var keyword an error in | |||
Nasal. | |||
commit c7c3fae5c2cd21cf81e7a94911568adba926f680 | |||
Author: ThorstenB <bre...@gmail.com> | |||
Date: Sat May 7 19:40:01 2011 +0200 | |||
Also remove visual_enviro.cxx from the VC90 build. | |||
</pre> | |||
That is my two local commits appear as later than any upstream commit, although they are "older" (as seen by their dates). | |||
This is the effect of the rebase. If I had merged my branch with the upstream branch instead of rebasing it on top of the upstream branch my | |||
commits would have been somwhere way down in the history. | |||
However, note that each rebase creates new commits since the commit ID is a consequence of the history preceding the commit. The old "copies" of my | |||
commits from previous rebases are no longer part of my local branch. | |||
=== Keeping topic branches in sync with upstream === | === Keeping topic branches in sync with upstream === |