From: Junio C Hamano Date: Thu, 21 Aug 2008 10:34:22 +0000 (+0000) Subject: Autogenerated HTML docs for v1.6.0-90-g436ed X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=3f2f6e5d768e1e09e959ec54a26e552b5dfc4f14;p=git.git Autogenerated HTML docs for v1.6.0-90-g436ed --- diff --git a/git-count-objects.html b/git-count-objects.html index 689f3d8a2..9dfe48f17 100644 --- a/git-count-objects.html +++ b/git-count-objects.html @@ -340,8 +340,9 @@ them, to help you decide when it is a good time to repack.

In addition to the number of loose objects and disk space consumed, it reports the number of in-pack - objects, number of packs, and number of objects that can be - removed by running git prune-packed. + objects, number of packs, disk space consumed by those packs, + and number of objects that can be removed by running + git prune-packed.

@@ -360,7 +361,7 @@ them, to help you decide when it is a good time to repack.

diff --git a/git-count-objects.txt b/git-count-objects.txt index 75a8da1ca..6bc1c21e6 100644 --- a/git-count-objects.txt +++ b/git-count-objects.txt @@ -21,8 +21,9 @@ OPTIONS --verbose:: In addition to the number of loose objects and disk space consumed, it reports the number of in-pack - objects, number of packs, and number of objects that can be - removed by running `git prune-packed`. + objects, number of packs, disk space consumed by those packs, + and number of objects that can be removed by running + `git prune-packed`. Author diff --git a/git-diff-tree.html b/git-diff-tree.html index d1d79ed69..584177708 100644 --- a/git-diff-tree.html +++ b/git-diff-tree.html @@ -862,13 +862,20 @@ git-diff-tree(1) Manual Page

When --stdin is specified, the command does not take <tree-ish> arguments from the command line. Instead, it - reads either one <commit> or a list of <commit> - separated with a single space from its standard input. + reads lines containing either two <tree>, one <commit>, or a + list of <commit> from its standard input. (Use a single space + as separator.)

-

When a single commit is given on one line of such input, it compares -the commit with its parents. The following flags further affects its -behavior. The remaining commits, when given, are used as if they are +

When two trees are given, it compares the first tree with the second. +When a single commit is given, it compares the commit with its +parents. The remaining commits, when given, are used as if they are parents of the first commit.

+

When comparing two trees, the ID of both trees (separated by a space +and terminated by a newline) is printed before the difference. When +comparing commits, the ID of the first (or only) commit, followed by a +newline, is printed.

+

The following flags further affects the behavior when comparing +commits (but not trees).

-m @@ -1855,7 +1862,7 @@ the pathname, but if that is NUL, the record will show two paths.

diff --git a/git-diff-tree.txt b/git-diff-tree.txt index 1fdf20dcc..5d48664e6 100644 --- a/git-diff-tree.txt +++ b/git-diff-tree.txt @@ -49,13 +49,22 @@ include::diff-options.txt[] --stdin:: When '--stdin' is specified, the command does not take arguments from the command line. Instead, it - reads either one or a list of - separated with a single space from its standard input. + reads lines containing either two , one , or a + list of from its standard input. (Use a single space + as separator.) + -When a single commit is given on one line of such input, it compares -the commit with its parents. The following flags further affects its -behavior. The remaining commits, when given, are used as if they are +When two trees are given, it compares the first tree with the second. +When a single commit is given, it compares the commit with its +parents. The remaining commits, when given, are used as if they are parents of the first commit. ++ +When comparing two trees, the ID of both trees (separated by a space +and terminated by a newline) is printed before the difference. When +comparing commits, the ID of the first (or only) commit, followed by a +newline, is printed. ++ +The following flags further affects the behavior when comparing +commits (but not trees). -m:: By default, 'git-diff-tree --stdin' does not show diff --git a/git-merge-base.html b/git-merge-base.html index 450530c79..ae6de2339 100644 --- a/git-merge-base.html +++ b/git-merge-base.html @@ -320,17 +320,22 @@ git-merge-base(1) Manual Page

SYNOPSIS

-

git merge-base [--all] <commit> <commit>

+

git merge-base [--all] <commit> <commit>…

DESCRIPTION

-

git-merge-base finds as good a common ancestor as possible between -the two commits. That is, given two commits A and B, git merge-base A -B will output a commit which is reachable from both A and B through -the parent relationship.

-

Given a selection of equally good common ancestors it should not be -relied on to decide in any particular way.

-

The git-merge-base algorithm is still in flux - use the source…

+

git-merge-base finds best common ancestor(s) between two commits to use +in a three-way merge. One common ancestor is better than another common +ancestor if the latter is an ancestor of the former. A common ancestor +that does not have any better common ancestor than it is a best common +ancestor, i.e. a merge base. Note that there can be more than one +merge bases between two commits.

+

Among the two commits to compute their merge bases, one is specified by +the first commit argument on the command line; the other commit is a +(possibly hypothetical) commit that is a merge across all the remaining +commits on the command line. As the most common special case, giving only +two commits from the command line means computing the merge base between +the given two commits.

OPTIONS

@@ -340,12 +345,62 @@ relied on to decide in any particular way.

- Output all common ancestors for the two commits instead of - just one. + Output all merge bases for the commits, instead of just one.

+

DISCUSSION

+
+

Given two commits A and B, git merge-base A B will output a commit +which is reachable from both A and B through the parent relationship.

+

For example, with this topology:

+
+
+
         o---o---o---B
+        /
+---o---1---o---o---o---A
+
+

the merge base between A and B is 1.

+

Given three commits A, B and C, git merge-base A B C will compute the +merge base between A and an hypothetical commit M, which is a merge +between B and C. For example, with this topology:

+
+
+
       o---o---o---o---C
+      /
+     /   o---o---o---B
+    /   /
+---2---1---o---o---o---A
+
+

the result of git merge-base A B C is 1. This is because the +equivalent topology with a merge commit M between B and C is:

+
+
+
       o---o---o---o---o
+      /                 \
+     /   o---o---o---o---M
+    /   /
+---2---1---o---o---o---A
+
+

and the result of git merge-base A M is 1. Commit 2 is also a +common ancestor between A and M, but 1 is a better common ancestor, +because 2 is an ancestor of 1. Hence, 2 is not a merge base.

+

When the history involves criss-cross merges, there can be more than one +best common ancestors between two commits. For example, with this +topology:

+
+
+
---1---o---A
+    \ /
+     X
+    / \
+---2---o---o---B
+
+

both 1 and 2 are merge-base of A and B. Neither one is better than +the other (both are best merge base). When --all option is not given, +it is unspecified which best one is output.

+

Author

Written by Linus Torvalds <torvalds@osdl.org>

@@ -360,7 +415,7 @@ relied on to decide in any particular way.

diff --git a/git-merge-base.txt b/git-merge-base.txt index 1a7ecbf8f..2f0c5259e 100644 --- a/git-merge-base.txt +++ b/git-merge-base.txt @@ -8,26 +8,81 @@ git-merge-base - Find as good common ancestors as possible for a merge SYNOPSIS -------- -'git merge-base' [--all] +'git merge-base' [--all] ... DESCRIPTION ----------- -'git-merge-base' finds as good a common ancestor as possible between -the two commits. That is, given two commits A and B, `git merge-base A -B` will output a commit which is reachable from both A and B through -the parent relationship. +'git-merge-base' finds best common ancestor(s) between two commits to use +in a three-way merge. One common ancestor is 'better' than another common +ancestor if the latter is an ancestor of the former. A common ancestor +that does not have any better common ancestor than it is a 'best common +ancestor', i.e. a 'merge base'. Note that there can be more than one +merge bases between two commits. -Given a selection of equally good common ancestors it should not be -relied on to decide in any particular way. - -The 'git-merge-base' algorithm is still in flux - use the source... +Among the two commits to compute their merge bases, one is specified by +the first commit argument on the command line; the other commit is a +(possibly hypothetical) commit that is a merge across all the remaining +commits on the command line. As the most common special case, giving only +two commits from the command line means computing the merge base between +the given two commits. OPTIONS ------- --all:: - Output all common ancestors for the two commits instead of - just one. + Output all merge bases for the commits, instead of just one. + +DISCUSSION +---------- + +Given two commits 'A' and 'B', `git merge-base A B` will output a commit +which is reachable from both 'A' and 'B' through the parent relationship. + +For example, with this topology: + + o---o---o---B + / + ---o---1---o---o---o---A + +the merge base between 'A' and 'B' is '1'. + +Given three commits 'A', 'B' and 'C', `git merge-base A B C` will compute the +merge base between 'A' and an hypothetical commit 'M', which is a merge +between 'B' and 'C'. For example, with this topology: + + o---o---o---o---C + / + / o---o---o---B + / / + ---2---1---o---o---o---A + +the result of `git merge-base A B C` is '1'. This is because the +equivalent topology with a merge commit 'M' between 'B' and 'C' is: + + + o---o---o---o---o + / \ + / o---o---o---o---M + / / + ---2---1---o---o---o---A + +and the result of `git merge-base A M` is '1'. Commit '2' is also a +common ancestor between 'A' and 'M', but '1' is a better common ancestor, +because '2' is an ancestor of '1'. Hence, '2' is not a merge base. + +When the history involves criss-cross merges, there can be more than one +'best' common ancestors between two commits. For example, with this +topology: + + ---1---o---A + \ / + X + / \ + ---2---o---o---B + +both '1' and '2' are merge-base of A and B. Neither one is better than +the other (both are 'best' merge base). When `--all` option is not given, +it is unspecified which best one is output. Author ------ diff --git a/git-submodule.html b/git-submodule.html index 4d00e64cf..e4037fd08 100644 --- a/git-submodule.html +++ b/git-submodule.html @@ -325,7 +325,8 @@ git-submodule(1) Manual Page git submodule [--quiet] status [--cached] [--] [<path>…] git submodule [--quiet] init [--] [<path>…] git submodule [--quiet] update [--init] [--] [<path>…] -git submodule [--quiet] summary [--summary-limit <n>] [commit] [--] [<path>…] +git submodule [--quiet] summary [--summary-limit <n>] [commit] [--] [<path>…] +git submodule [--quiet] foreach <command>

DESCRIPTION

@@ -451,6 +452,25 @@ summary index or working tree (switched by --cached) are shown.

+
+foreach +
+
+

+ Evaluates an arbitrary shell command in each checked out submodule. + The command has access to the variables $path and $sha1: + $path is the name of the submodule directory relative to the + superproject, and $sha1 is the commit as recorded in the superproject. + Any submodules defined in the superproject but not checked out are + ignored by this command. Unless given --quiet, foreach prints the name + of each submodule before evaluating the command. + A non-zero return from the command in any submodule causes + the processing to terminate. This can be overridden by adding || : + to the end of the command. +

+

As an example, "git submodule foreach echo $path git rev-parse HEAD will +show the path and currently checked out commit for each submodule.

+

OPTIONS

@@ -533,7 +553,7 @@ for details.

diff --git a/git-submodule.txt b/git-submodule.txt index bf33b0cba..abbd5b72d 100644 --- a/git-submodule.txt +++ b/git-submodule.txt @@ -14,6 +14,7 @@ SYNOPSIS 'git submodule' [--quiet] init [--] [...] 'git submodule' [--quiet] update [--init] [--] [...] 'git submodule' [--quiet] summary [--summary-limit ] [commit] [--] [...] +'git submodule' [--quiet] foreach DESCRIPTION @@ -123,6 +124,22 @@ summary:: in the submodule between the given super project commit and the index or working tree (switched by --cached) are shown. +foreach:: + Evaluates an arbitrary shell command in each checked out submodule. + The command has access to the variables $path and $sha1: + $path is the name of the submodule directory relative to the + superproject, and $sha1 is the commit as recorded in the superproject. + Any submodules defined in the superproject but not checked out are + ignored by this command. Unless given --quiet, foreach prints the name + of each submodule before evaluating the command. + A non-zero return from the command in any submodule causes + the processing to terminate. This can be overridden by adding '|| :' + to the end of the command. ++ +As an example, "git submodule foreach 'echo $path `git rev-parse HEAD`' will +show the path and currently checked out commit for each submodule. + + OPTIONS ------- -q:: diff --git a/gitattributes.html b/gitattributes.html index 576ee39c1..38436be72 100644 --- a/gitattributes.html +++ b/gitattributes.html @@ -649,6 +649,11 @@ patterns are available:

  • +python suitable for source code in the Python language. +

    +
  • +
  • +

    ruby suitable for source code in the Ruby language.

  • @@ -657,6 +662,11 @@ patterns are available:

    tex suitable for source code for LaTeX documents.

    +
  • +

    +html suitable for HTML/XHTML documents. +

    +
  • Performing a three-way merge

    The attribute merge affects how three versions of a file is @@ -900,7 +910,7 @@ frotz unspecified

    diff --git a/gitattributes.txt b/gitattributes.txt index db16b0ca5..5495d695c 100644 --- a/gitattributes.txt +++ b/gitattributes.txt @@ -316,10 +316,14 @@ patterns are available: - `pascal` suitable for source code in the Pascal/Delphi language. +- `python` suitable for source code in the Python language. + - `ruby` suitable for source code in the Ruby language. - `tex` suitable for source code for LaTeX documents. +- `html` suitable for HTML/XHTML documents. + Performing a three-way merge ~~~~~~~~~~~~~~~~~~~~~~~~~~~~