Changes

Jump to navigation Jump to search
1,330 bytes added ,  19:31, 28 April 2013
→‎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 ===

Navigation menu