Autogenerated HTML docs for v1.4.1-gbe4c7
authorJunio C Hamano <junio@hera.kernel.org>
Fri, 7 Jul 2006 06:05:40 +0000 (06:05 +0000)
committerJunio C Hamano <junio@hera.kernel.org>
Fri, 7 Jul 2006 06:05:40 +0000 (06:05 +0000)
git-rev-list.html
git-rev-list.txt
git-rev-parse.html
git-rev-parse.txt
git-show-branch.html
git-show-branch.txt

index 98ad84e8bc0ea5d9523ca10699b0371b4f3c7626..21a1b174781dbed09601c0dd82b127a872494885 100644 (file)
@@ -279,6 +279,7 @@ git-rev-list(1) Manual Page
              [ --sparse ]\r
              [ --no-merges ]\r
              [ --remove-empty ]\r
+             [ --not ]\r
              [ --all ]\r
              [ --topo-order ]\r
              [ --parents ]\r
@@ -298,6 +299,14 @@ means "list all the commits which are included in <em>foo</em> and <em>bar</em>,
 not in <em>baz</em>".</p>\r
 <p>A special notation &lt;commit1&gt;..&lt;commit2&gt; can be used as a\r
 short-hand for ^&lt;commit1&gt; &lt;commit2&gt;.</p>\r
+<p>Another special notation is &lt;commit1&gt;&#8230;&lt;commit2&gt; which is useful for\r
+merges.  The resulting set of commits is the symmetric difference\r
+between the two operands.  The following two commands are equivalent:</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt>$ git-rev-list A B --not $(git-merge-base --all A B)\r
+$ git-rev-list A...B</tt></pre>\r
+</div></div>\r
 </div>\r
 <h2>OPTIONS</h2>\r
 <div class="sectionbody">\r
@@ -406,6 +415,16 @@ short-hand for ^&lt;commit1&gt; &lt;commit2&gt;.</p>
 </p>\r
 </dd>\r
 <dt>\r
+--not\r
+</dt>\r
+<dd>\r
+<p>\r
+        Reverses the meaning of the <em>^</em> prefix (or lack\r
+        thereof) for all following revision specifiers, up to\r
+        the next <tt>--not</tt>.\r
+</p>\r
+</dd>\r
+<dt>\r
 --all\r
 </dt>\r
 <dd>\r
@@ -441,7 +460,7 @@ short-hand for ^&lt;commit1&gt; &lt;commit2&gt;.</p>
 </div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 09-May-2006 00:32:26 UTC\r
+Last updated 07-Jul-2006 06:05:13 UTC\r
 </div>\r
 </div>\r
 </body>\r
index ad6d14c55aab2144bdac3c313305ba408fe5f0db..6c370e1bef9a83cd756146f6a3739abb4d08b4ed 100644 (file)
@@ -15,6 +15,7 @@ SYNOPSIS
             [ \--sparse ]
             [ \--no-merges ]
             [ \--remove-empty ]
+            [ \--not ]
             [ \--all ]
             [ \--topo-order ]
             [ \--parents ]
@@ -37,6 +38,14 @@ not in 'baz'".
 A special notation <commit1>..<commit2> can be used as a
 short-hand for {caret}<commit1> <commit2>.
 
+Another special notation is <commit1>...<commit2> which is useful for
+merges.  The resulting set of commits is the symmetric difference
+between the two operands.  The following two commands are equivalent:
+
+------------
+$ git-rev-list A B --not $(git-merge-base --all A B)
+$ git-rev-list A...B
+------------
 
 OPTIONS
 -------
@@ -93,6 +102,11 @@ OPTIONS
 --remove-empty::
        Stop when a given path disappears from the tree.
 
+--not::
+       Reverses the meaning of the '{caret}' prefix (or lack
+       thereof) for all following revision specifiers, up to
+       the next `--not`.
+
 --all::
        Pretend as if all the refs in `$GIT_DIR/refs/` are
        listed on the command line as <commit>.
index 7489c9cb6e13559798f4387111bbc603839d998f..7c7e7532342584d5215ffd5b03b4a74ccaaa1c7f 100644 (file)
@@ -539,10 +539,6 @@ A suffix <em>^</em> followed by an empty brace pair
 </p>\r
 </li>\r
 </ul>\r
-<p><em>git-rev-parse</em> also accepts a prefix <em>^</em> to revision parameter,\r
-which is passed to <em>git-rev-list</em>.  Two revision parameters\r
-concatenated with <em>..</em> is a short-hand for writing a range\r
-between them.  I.e. <em>r1..r2</em> is equivalent to saying <em>^r1 r2</em></p>\r
 <p>Here is an illustration, by Jon Loeliger.  Both node B and C are\r
 a commit parents of commit node A.  Parent commits are ordered\r
 left-to-right.</p>\r
@@ -551,9 +547,8 @@ left-to-right.</p>
 <pre><tt>G   H   I   J\r
  \ /     \ /\r
   D   E   F\r
-   \  |  /\r
-    \ | /\r
-     \|/\r
+   \  |  /         \ | /   |\r
+     \|/    |\r
       B     C\r
        \   /\r
         \ /\r
@@ -573,6 +568,37 @@ I = F^   = B^3^    = A^^3^
 J = F^2  = B^3^2   = A^^3^2</tt></pre>\r
 </div></div>\r
 </div>\r
+<h2>SPECIFYING RANGES</h2>\r
+<div class="sectionbody">\r
+<p>History traversing commands such as <tt>git-log</tt> operate on a set\r
+of commits, not just a single commit.  To these commands,\r
+specifying a single revision with the notation described in the\r
+previous section means the set of commits reachable from that\r
+commit, following the commit ancestry chain.</p>\r
+<p>To exclude commits reachable from a commit, a prefix <tt>^</tt>\r
+notation is used.  E.g. "<tt>^r1 r2</tt>" means commits reachable\r
+from <tt>r2</tt> but exclude the ones reachable from <tt>r1</tt>.</p>\r
+<p>This set operation appears so often that there is a shorthand\r
+for it.  "<tt>r1..r2</tt>" is equivalent to "<tt>^r1 r2</tt>".  It is\r
+the difference of two sets (subtract the set of commits\r
+reachable from <tt>r1</tt> from the set of commits reachable from\r
+<tt>r2</tt>).</p>\r
+<p>A similar notation "<tt>r1...r2</tt>" is called symmetric difference\r
+of <tt>r1</tt> and <tt>r2</tt> and is defined as\r
+"<tt>r1 r2 --not $(git-merge-base --all r1 r2)</tt>".\r
+It it the set of commits that are reachable from either one of\r
+<tt>r1</tt> or <tt>r2</tt> but not from both.</p>\r
+<p>Here are a few examples:</p>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><tt>D                A B D\r
+D F              A B C D F\r
+^A G             B D\r
+^A F             B C F\r
+G...I            C D F G I\r
+^B G I           C D F G I</tt></pre>\r
+</div></div>\r
+</div>\r
 <h2>Author</h2>\r
 <div class="sectionbody">\r
 <p>Written by Linus Torvalds &lt;torvalds@osdl.org&gt; and\r
@@ -588,7 +614,7 @@ Junio C Hamano &lt;junkio@cox.net&gt;</p>
 </div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 04-Jun-2006 07:24:31 UTC\r
+Last updated 07-Jul-2006 06:05:13 UTC\r
 </div>\r
 </div>\r
 </body>\r
index 627cde8520830c76378ffff0f2cc5cdc92fe2483..b761b4b9656eebf5b9caafc9d702c02e3f243fff 100644 (file)
@@ -156,11 +156,6 @@ syntax.
   and dereference the tag recursively until a non-tag object is
   found.
 
-'git-rev-parse' also accepts a prefix '{caret}' to revision parameter,
-which is passed to 'git-rev-list'.  Two revision parameters
-concatenated with '..' is a short-hand for writing a range
-between them.  I.e. 'r1..r2' is equivalent to saying '{caret}r1 r2'
-
 Here is an illustration, by Jon Loeliger.  Both node B and C are
 a commit parents of commit node A.  Parent commits are ordered
 left-to-right.
@@ -168,9 +163,9 @@ left-to-right.
     G   H   I   J
      \ /     \ /
       D   E   F
-       \  |  /
-        \ | /
-         \|/
+       \  |  / \
+        \ | /   |
+         \|/    |
           B     C
            \   /
             \ /
@@ -188,6 +183,40 @@ left-to-right.
     J = F^2  = B^3^2   = A^^3^2
 
 
+SPECIFYING RANGES
+-----------------
+
+History traversing commands such as `git-log` operate on a set
+of commits, not just a single commit.  To these commands,
+specifying a single revision with the notation described in the
+previous section means the set of commits reachable from that
+commit, following the commit ancestry chain.
+
+To exclude commits reachable from a commit, a prefix `{caret}`
+notation is used.  E.g. "`{caret}r1 r2`" means commits reachable
+from `r2` but exclude the ones reachable from `r1`.
+
+This set operation appears so often that there is a shorthand
+for it.  "`r1..r2`" is equivalent to "`{caret}r1 r2`".  It is
+the difference of two sets (subtract the set of commits
+reachable from `r1` from the set of commits reachable from
+`r2`).
+
+A similar notation "`r1\...r2`" is called symmetric difference
+of `r1` and `r2` and is defined as
+"`r1 r2 --not $(git-merge-base --all r1 r2)`".
+It it the set of commits that are reachable from either one of
+`r1` or `r2` but not from both.
+
+Here are a few examples:
+
+   D                A B D
+   D F              A B C D F
+   ^A G                    B D
+   ^A F             B C F
+   G...I            C D F G I
+   ^B G I          C D F G I
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org> and
index fa5d322b854deb62269a3acbc087abc5dd52c122..b4026ceb86046cacb0926604cc93dc2f50e97a4c 100644 (file)
@@ -340,6 +340,16 @@ no &lt;rev&gt; nor &lt;glob&gt; is given on the command line.</p>
 </p>\r
 </dd>\r
 <dt>\r
+--sparse\r
+</dt>\r
+<dd>\r
+<p>\r
+        By default, the output omits merges that are reachable\r
+        from only one tip being shown.  This option makes them\r
+        visible.\r
+</p>\r
+</dd>\r
+<dt>\r
 --more=&lt;n&gt;\r
 </dt>\r
 <dd>\r
@@ -470,7 +480,7 @@ your topic branch, it is shown as well.</p>
 </div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 18-Mar-2006 07:45:36 UTC\r
+Last updated 07-Jul-2006 06:05:14 UTC\r
 </div>\r
 </div>\r
 </body>\r
index f115b45ef61567b18f6686d12dd168e68f83cb02..a2445a48fc98ddd4865bab8d3033880a854fca36 100644 (file)
@@ -52,6 +52,11 @@ OPTIONS
         appear in topological order (i.e., descendant commits
         are shown before their parents).
 
+--sparse::
+       By default, the output omits merges that are reachable
+       from only one tip being shown.  This option makes them
+       visible.
+
 --more=<n>::
        Usually the command stops output upon showing the commit
        that is the common ancestor of all the branches.  This