Skip to content

Commit 257a84d

Browse files
sgrimmgitster
authored andcommitted
Document what the stage numbers in the :$n:path syntax mean.
The git-rev-parse manpage talks about the :$n:path notation (buried deep in a list of other syntax) but it just says $n is a "stage number" -- someone who is not familiar with the internals of git's merge implementation is never going to be able to figure out that "1", "2", and "3" means. Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent d56651c commit 257a84d

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

Documentation/git-rev-parse.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,10 @@ blobs contained in a commit.
215215
* A colon, optionally followed by a stage number (0 to 3) and a
216216
colon, followed by a path; this names a blob object in the
217217
index at the given path. Missing stage number (and the colon
218-
that follows it) names an stage 0 entry.
218+
that follows it) names an stage 0 entry. During a merge, stage
219+
1 is the common ancestor, stage 2 is the target branch's version
220+
(typically the current branch), and stage 3 is the version from
221+
the branch being merged.
219222

220223
Here is an illustration, by Jon Loeliger. Both node B and C are
221224
a commit parents of commit node A. Parent commits are ordered

0 commit comments

Comments
 (0)