Merge refs/heads/master from paulus
[git.git] / Documentation / git-rev-tree.txt
1 git-rev-tree(1)
2 ===============
3 v0.1, May 2005
4
5 NAME
6 ----
7 git-rev-tree - Provides the revision tree for one or more commits
8
9
10 SYNOPSIS
11 --------
12 'git-rev-tree' [--edges] [--cache <cache-file>] [^]<commit> [[^]<commit>]
13
14 DESCRIPTION
15 -----------
16 Provides the revision tree for one or more commits.
17
18 OPTIONS
19 -------
20 --edges::
21         Show edges (ie places where the marking changes between parent
22         and child)
23
24 --cache <cache-file>::
25         Use the specified file as a cache from a previous git-rev-list run
26         to speed things up.  Note that this "cache" is totally different
27         concept from the directory index.  Also this option is not
28         implemented yet.
29
30 [^]<commit>::
31         The commit id to trace (a leading caret means to ignore this
32         commit-id and below)
33
34 Output
35 ------
36
37         <date> <commit>:<flags> [<parent-commit>:<flags> ]\*
38
39 <date>::
40         Date in 'seconds since epoch'
41
42 <commit>::
43         id of commit object
44
45 <parent-commit>::
46         id of each parent commit object (>1 indicates a merge)
47
48 <flags>::
49
50         The flags are read as a bitmask representing each commit
51         provided on the commandline. eg: given the command:
52
53                  $ git-rev-tree <com1> <com2> <com3>
54
55         The output:
56
57             <date> <commit>:5
58
59          means that <commit> is reachable from <com1>(1) and <com3>(4)
60         
61 A revtree can get quite large. "git-rev-tree" will eventually allow
62 you to cache previous state so that you don't have to follow the whole
63 thing down.
64
65 So the change difference between two commits is literally
66
67         git-rev-tree [commit-id1]  > commit1-revtree
68         git-rev-tree [commit-id2]  > commit2-revtree
69         join -t : commit1-revtree commit2-revtree > common-revisions
70
71 (this is also how to find the most common parent - you'd look at just
72 the head revisions - the ones that aren't referred to by other
73 revisions - in "common-revision", and figure out the best one. I
74 think.)
75
76
77 Author
78 ------
79 Written by Linus Torvalds <torvalds@osdl.org>
80
81 Documentation
82 --------------
83 Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.
84
85 GIT
86 ---
87 Part of the link:git.html[git] suite
88