summaryrefslogtreecommitdiffstats
path: root/git-rebase.txt
diff options
context:
space:
mode:
authorJunio C Hamano <junio@hera.kernel.org>2007-10-23 01:23:31 +0000
committerJunio C Hamano <junio@hera.kernel.org>2007-10-23 01:23:31 +0000
commit764a667a8f360cfaafc6bfa9a0b5a2f09ed47586 (patch)
treefc6f7da163a804cc8aef905924828d69b897399a /git-rebase.txt
parentea719cf8b709e1b5c43d18ca26832f8c9bf11e7e (diff)
downloadgit-htmldocs-764a667a8f360cfaafc6bfa9a0b5a2f09ed47586.tar.gz
Autogenerated HTML docs for v1.5.3.4-319-gdd817
Diffstat (limited to 'git-rebase.txt')
-rw-r--r--git-rebase.txt25
1 files changed, 24 insertions, 1 deletions
diff --git a/git-rebase.txt b/git-rebase.txt
index e8e75790f..e4326d332 100644
--- a/git-rebase.txt
+++ b/git-rebase.txt
@@ -28,7 +28,10 @@ The current branch is reset to <upstream>, or <newbase> if the
`git reset --hard <upstream>` (or <newbase>).
The commits that were previously saved into the temporary area are
-then reapplied to the current branch, one by one, in order.
+then reapplied to the current branch, one by one, in order. Note that
+any commits in HEAD which introduce the same textual changes as a commit
+in HEAD..<upstream> are omitted (i.e., a patch already accepted upstream
+with a different commit message or timestamp will be skipped).
It is possible that a merge failure will prevent this process from being
completely automatic. You will have to resolve any such merge failure
@@ -62,6 +65,26 @@ would be:
The latter form is just a short-hand of `git checkout topic`
followed by `git rebase master`.
+If the upstream branch already contains a change you have made (e.g.,
+because you mailed a patch which was applied upstream), then that commit
+will be skipped. For example, running `git-rebase master` on the
+following history (in which A' and A introduce the same set of changes,
+but have different committer information):
+
+------------
+ A---B---C topic
+ /
+ D---E---A'---F master
+------------
+
+will result in:
+
+------------
+ B'---C' topic
+ /
+ D---E---A'---F master
+------------
+
Here is how you would transplant a topic branch based on one
branch to another, to pretend that you forked the topic branch
from the latter branch, using `rebase --onto`.