User Tools

Site Tools


git_rebase

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
git_rebase [2019/04/03 20:32]
rpjday [SYNOPSIS]
git_rebase [2019/04/06 21:32]
rpjday [Simple example]
Line 20: Line 20:
 ===== The fundamental rebase operation ===== ===== The fundamental rebase operation =====
  
-Three components:+Three components ​define a rebase:
  
   * the //branch// to be rebased   * the //branch// to be rebased
Line 26: Line 26:
   * the target //commit// onto which to rebase   * the target //commit// onto which to rebase
  
-Simple example:+===== Examples ===== 
 + 
 +==== Simple example ​====
  
 <​code>​ <​code>​
-              A---B---C topic+              A---B---C ​          ​topic
              /              /
-        D---E---F---G master+        D---E---F---G ​            ​master
 </​code>​ </​code>​
  
-Example requiring ​''​%%--%%onto newbase'':​+One of: 
 + 
 +<​code>​ 
 +$ git checkout topic 
 +$ git rebase master 
 +</​code>​ 
 + 
 +or: 
 + 
 +<​code>​ 
 +$ git rebase master topic 
 +</​code>​ 
 + 
 +<​code>​ 
 +                      A'--B'--C' ​ topic 
 +                     / 
 +        D---E---F---G ​            ​master 
 +</​code>​ 
 + 
 +==== Example requiring "--onto newbase" ====
  
 <​code>​ <​code>​
Line 43: Line 64:
                         o---o---o ​ topic                         o---o---o ​ topic
 </​code>​ </​code>​
-===== DESCRIPTION ===== 
  
 <​code>​ <​code>​
-If <​branch>​ is specified, ​git rebase ​will perform an automatic +git rebase ​--onto master next topic
-git checkout <​branch>​ before doing anything else. Otherwise it +
-remains on the current branch.+
 </​code>​ </​code>​
- 
-In other words, the final optional argument ''​[branch]''​ can always be omitted if you first just: 
  
 <​code>​ <​code>​
-$ git checkout <​branch>​+                          o---o---o ​ topic 
 +                         / 
 +        o---o---o---o---o ​ master 
 +             \ 
 +              o---o---o---o---o ​ next
 </​code>​ </​code>​
  
-then just pretend it says ''​HEAD''​. 
  
-===== Examples ===== 
  
 ==== Removing a sequence of commits ===== ==== Removing a sequence of commits =====
git_rebase.txt · Last modified: 2019/04/06 21:34 by rpjday