diff options
Diffstat (limited to 'Documentation')
84 files changed, 290 insertions, 239 deletions
diff --git a/Documentation/Makefile b/Documentation/Makefile index bb21d6af4..3cfa360a9 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -17,14 +17,14 @@ DOC_HTML += $(patsubst %,%.html,$(ARTICLES) $(SP_ARTICLES)) DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT)) DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT)) -prefix=$(HOME) +prefix?=$(HOME) bin=$(prefix)/bin mandir=$(prefix)/man man1=$(mandir)/man1 man7=$(mandir)/man7 # DESTDIR= -INSTALL=install +INSTALL?=install # # Please note that there is a minor bug in asciidoc. diff --git a/Documentation/asciidoc.conf b/Documentation/asciidoc.conf index baefb2f0d..fa0877d48 100644 --- a/Documentation/asciidoc.conf +++ b/Documentation/asciidoc.conf @@ -7,6 +7,9 @@ # Show GIT link as: <command>(<section>); if section is defined, else just show # the command. +[attributes] +caret=^ + ifdef::backend-docbook[] [gitlink-inlinemacro] {0%{target}} @@ -19,3 +22,5 @@ ifdef::backend-xhtml11[] [gitlink-inlinemacro] <a href="{target}.html">{target}{0?({0})}</a> endif::backend-xhtml11[] + + diff --git a/Documentation/cvs-migration.txt b/Documentation/cvs-migration.txt index 7c4dbef00..57436f007 100644 --- a/Documentation/cvs-migration.txt +++ b/Documentation/cvs-migration.txt @@ -1,6 +1,5 @@ -Git for CVS users +git for CVS users ================= -v0.99.5, Aug 2005 Ok, so you're a CVS user. That's ok, it's a treatable condition, and the first step to recovery is admitting you have a problem. The fact that @@ -8,7 +7,7 @@ you are reading this file means that you may be well on that path already. The thing about CVS is that it absolutely sucks as a source control -manager, and you'll thus be happy with almost anything else. Git, +manager, and you'll thus be happy with almost anything else. git, however, may be a bit 'too' different (read: "good") for your taste, and does a lot of things differently. @@ -16,7 +15,7 @@ One particular suckage of CVS is very hard to work around: CVS is basically a tool for tracking 'file' history, while git is a tool for tracking 'project' history. This sometimes causes problems if you are used to doing very strange things in CVS, in particular if you're doing -things like making branches of just a subset of the project. Git can't +things like making branches of just a subset of the project. git can't track that, since git never tracks things on the level of an individual file, only on the whole project level. @@ -24,7 +23,7 @@ The good news is that most people don't do that, and in fact most sane people think it's a bug in CVS that makes it tag (and check in changes) one file at a time. So most projects you'll ever see will use CVS 'as if' it was sane. In which case you'll find it very easy indeed to -move over to Git. +move over to git. First off: this is not a git tutorial. See link:tutorial.html[Documentation/tutorial.txt] for how git @@ -33,7 +32,7 @@ and notes on converting from CVS to git. Second: CVS has the notion of a "repository" as opposed to the thing that you're actually working in (your working directory, or your -"checked out tree"). Git does not have that notion at all, and all git +"checked out tree"). git does not have that notion at all, and all git working directories 'are' the repositories. However, you can easily emulate the CVS model by having one special "global repository", which people can synchronize with. See details later, but in the meantime @@ -50,7 +49,7 @@ gone through the git tutorial, and generally familiarized yourself with how to commit stuff etc in git) is to create a git'ified version of your CVS archive. -Happily, that's very easy indeed. Git will do it for you, although git +Happily, that's very easy indeed. git will do it for you, although git will need the help of a program called "cvsps": http://www.cobite.com/cvsps/ @@ -136,7 +135,7 @@ technically possible, and there are at least two specialized scripts out there that can be used to get equivalent information (see the git mailing list archives for details). -Git has a couple of alternatives, though, that you may find sufficient +git has a couple of alternatives, though, that you may find sufficient or even superior depending on your use. One is called "git-whatchanged" (for obvious reasons) and the other one is called "pickaxe" ("a tool for the software archeologist"). @@ -209,7 +208,7 @@ show anything for commits that do not touch this "if" statement. Also, in the original context, the same statement might have appeared at first in a different file and later the file was renamed to "a-file.c". CVS annotate would not help you to go -back across such a rename, but GIT would still help you in such +back across such a rename, but git would still help you in such a situation. For that, you can give the -C flag to git-diff-tree, like this: @@ -229,7 +228,7 @@ does rename or copy would not show in the output, and if the "o-file.c", it would find the commit that changed the statement when it was in "o-file.c". -NOTE: The current versions of "git-diff-tree -C" is not eager +NOTE: The current version of "git-diff-tree -C" is not eager enough to find copies, and it will miss the fact that a-file.c was created by copying o-file.c unless o-file.c was somehow changed in the same commit. diff --git a/Documentation/diff-format.txt b/Documentation/diff-format.txt index 6e9fa8cdb..bfe634dcd 100644 --- a/Documentation/diff-format.txt +++ b/Documentation/diff-format.txt @@ -1,8 +1,8 @@ The output format from "git-diff-index", "git-diff-tree" and "git-diff-files" are very similar. -These commands all compare two sets of things; what are -compared are different: +These commands all compare two sets of things; what is +compared differs: git-diff-index <tree-ish>:: compares the <tree-ish> and the files on the filesystem. @@ -46,7 +46,7 @@ That is, from the left to the right: . path for "dst"; only exists for C or R. . an LF or a NUL when '-z' option is used, to terminate the record. -<sha1> is shown as all 0's if new is a file on the filesystem +<sha1> is shown as all 0's if a file is new on the filesystem and it is out of sync with the cache. Example: @@ -91,7 +91,7 @@ For a path that is added, removed, or modified, where: <old|new>-file:: are files GIT_EXTERNAL_DIFF can use to read the - contents of <old|ne>, + contents of <old|new>, <old|new>-hex:: are the 40-hexdigit SHA1 hashes, <old|new>-mode:: are the octal representation of the file modes. @@ -106,7 +106,7 @@ For a path that is unmerged, 'GIT_EXTERNAL_DIFF' is called with 1 parameter, <path>. -Git specific extension to diff format +git specific extension to diff format ------------------------------------- What -p option produces is slightly different from the @@ -121,12 +121,11 @@ The `a/` and `b/` filenames are the same unless rename/copy is involved. Especially, even for a creation or a deletion, `/dev/null` is _not_ used in place of `a/` or `b/` filenames. + -When rename/copy is involved, `file1` and `file2` shows the +When rename/copy is involved, `file1` and `file2` show the name of the source file of the rename/copy and the name of the file that rename/copy produces, respectively. -2. It is followed by extended header lines that are one or - more of: +2. It is followed by one or more extended header lines: old mode <mode> new mode <mode> diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt index 613a60d60..06500d04b 100644 --- a/Documentation/diff-options.txt +++ b/Documentation/diff-options.txt @@ -5,9 +5,8 @@ Synonym for "-p". -r:: - Look recursively in subdirectories; this flag does not - mean anything to commands other than "git-diff-tree"; - other diff commands always look at all the subdirectories. + Look recursively in subdirectories; only used by "git-diff-tree"; + other diff commands always work recursively. -z:: \0 line termination on output @@ -28,26 +27,26 @@ Detect copies as well as renames. --find-copies-harder:: - By default, -C option finds copies only if the original - file of the copy was modified in the same changeset for - performance reasons. This flag makes the command + For performance reasons, by default, -C option finds copies only + if the original file of the copy was modified in the same + changeset. This flag makes the command inspect unmodified files as candidates for the source of copy. This is a very expensive operation for large projects, so use it with caution. -l<num>:: -M and -C options require O(n^2) processing time where n - in the number of potential rename/copy targets. This + is the number of potential rename/copy targets. This option prevents rename/copy detection from running if - the number of rename/copy targets exceed the specified + the number of rename/copy targets exceeds the specified number. -S<string>:: - Look for differences that contains the change in <string>. + Look for differences that contain the change in <string>. --pickaxe-all:: When -S finds a change, show all the changes in that - changeset, not just the files that contains the change + changeset, not just the files that contain the change in <string>. -O<orderfile>:: diff --git a/Documentation/diffcore.txt b/Documentation/diffcore.txt index a1f03df8f..7c2168a99 100644 --- a/Documentation/diffcore.txt +++ b/Documentation/diffcore.txt @@ -177,7 +177,7 @@ diffcore-merge-broken --------------------- This transformation is used to merge filepairs broken by -diffcore-break, and were not transformed into rename/copy by +diffcore-break, and not transformed into rename/copy by diffcore-rename, back into a single modification. This always runs when diffcore-break is used. @@ -206,10 +206,10 @@ like these: * -B/60 (the same as above, since diffcore-break defaults to 50%). Note that earlier implementation left a broken pair as a separate -creation and deletion patches. This was unnecessary hack and +creation and deletion patches. This was an unnecessary hack and the latest implementation always merges all the broken pairs back into modifications, but the resulting patch output is -formatted differently to still let the reviewing easier for such +formatted differently for easier review in case of such a complete rewrite by showing the entire contents of old version prefixed with '-', followed by the entire contents of new version prefixed with '+'. @@ -250,7 +250,7 @@ pattern. Filepairs that match a glob pattern on an earlier line in the file are output before ones that match a later line, and filepairs that do not match any glob pattern are output last. -As an example, typical orderfile for the core GIT probably +As an example, typical orderfile for the core git probably would look like this: ------------------------------------------------ diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt index ae1ea762f..4a03b4cfc 100644 --- a/Documentation/git-add.txt +++ b/Documentation/git-add.txt @@ -11,7 +11,7 @@ SYNOPSIS DESCRIPTION ----------- -A simple wrapper to git-update-index to add files to the cache for people used +A simple wrapper for git-update-index to add files to the cache for people used to do "cvs add". OPTIONS diff --git a/Documentation/git-apply.txt b/Documentation/git-apply.txt index cb676348f..61d9dacc6 100644 --- a/Documentation/git-apply.txt +++ b/Documentation/git-apply.txt @@ -1,10 +1,9 @@ git-apply(1) ============ -v0.1, June 2005 NAME ---- -git-apply - Apply patch on a GIT index file and a work tree +git-apply - Apply patch on a git index file and a work tree SYNOPSIS @@ -13,7 +12,7 @@ SYNOPSIS DESCRIPTION ----------- -Reads supplied diff output and applies it on a GIT index file +Reads supplied diff output and applies it on a git index file and a work tree. OPTIONS diff --git a/Documentation/git-applymbox.txt b/Documentation/git-applymbox.txt index 5022643ad..8f01ca6a1 100644 --- a/Documentation/git-applymbox.txt +++ b/Documentation/git-applymbox.txt @@ -8,7 +8,7 @@ git-applymbox - Apply a series of patches in a mailbox SYNOPSIS -------- -'git-applymbox' [-u] [-k] [-q] ( -c .dotest/<num> | <mbox> ) [ <signoff> ] +'git-applymbox' [-u] [-k] [-q] [-m] ( -c .dotest/<num> | <mbox> ) [ <signoff> ] DESCRIPTION ----------- @@ -22,7 +22,7 @@ OPTIONS -q:: Apply patches interactively. The user will be given opportunity to edit the log message and the patch before - attempting to apply patch in each e-mail message. + attempting to apply it. -k:: Usually the program 'cleans up' the Subject: header line @@ -33,6 +33,14 @@ OPTIONS munging, and is most useful when used to read back 'git format-patch --mbox' output. +-m:: + Patches are applied with `git-apply` command, and unless + it cleanly applies without fuzz, the processing fails. + With this flag, if a tree that the patch applies cleanly + is found in a repository, the patch is applied to the + tree and then a 3-way merge between the resulting tree + and the current tree. + -u:: By default, the commit log message, author name and author email are taken from the e-mail without any diff --git a/Documentation/git-archimport.txt b/Documentation/git-archimport.txt index 605473174..fcda0125a 100644 --- a/Documentation/git-archimport.txt +++ b/Documentation/git-archimport.txt @@ -3,7 +3,7 @@ git-archimport(1) NAME ---- -git-archimport - Import an Arch repository into GIT +git-archimport - Import an Arch repository into git SYNOPSIS @@ -20,31 +20,34 @@ it will just import it as a regular commit. If it can find it, it will mark it as a merge whenever possible (see discussion below). The script expects you to provide the key roots where it can start the import -from an 'initial import' or 'tag' type of Arch commit. It will follow and import -new branches within the provided roots. +from an 'initial import' or 'tag' type of Arch commit. It will follow and +import new branches within the provided roots. It expects to be dealing with one project only. If it sees -branches that have different roots, it will refuse to run. In that case, edit your -<archive/branch> parameters to define clearly the scope of the import. +branches that have different roots, it will refuse to run. In that case, +edit your <archive/branch> parameters to define clearly the scope of the +import. -`git-archimport` uses `tla` extensively in the background to access the Arch repository. +`git-archimport` uses `tla` extensively in the background to access the +Arch repository. Make sure you have a recent version of `tla` available in the path. `tla` must know about the repositories you pass to `git-archimport`. For the initial import `git-archimport` expects to find itself in an empty directory. To follow the development of a project that uses Arch, rerun -`git-archimport` with the same parameters as the initial import to perform incremental imports. +`git-archimport` with the same parameters as the initial import to perform +incremental imports. MERGES ------ -Patch merge data from Arch is used to mark merges in GIT as well. GIT +Patch merge data from Arch is used to mark merges in git as well. git does not care much about tracking patches, and only considers a merge when a branch incorporates all the commits since the point they forked. The end result -is that GIT will have a good idea of how far branches have diverged. So the +is that git will have a good idea of how far branches have diverged. So the import process does lose some patch-trading metadata. Fortunately, when you try and merge branches imported from Arch, -GIT will find a good merge base, and it has a good chance of identifying +git will find a good merge base, and it has a good chance of identifying patches that have been traded out-of-sequence between the branches. OPTIONS diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt index ede06dac3..39fa665d9 100644 --- a/Documentation/git-bisect.txt +++ b/Documentation/git-bisect.txt @@ -76,7 +76,7 @@ During the bisection process, you can say to see the currently remaining suspects in `gitk`. -The good/bad you told the command is logged, and `git bisect +The good/bad input is logged, and `git bisect log` shows what you have done so far. You can truncate its output somewhere and save it in a file, and run diff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt index a2a0cfb7b..a7121a4c6 100644 --- a/Documentation/git-branch.txt +++ b/Documentation/git-branch.txt @@ -23,7 +23,7 @@ OPTIONS The name of the branch to create. start-point:: - Where to make the branch; defaults to HEAD. + Where to create the branch; defaults to HEAD. Author ------ diff --git a/Documentation/git-cat-file.txt b/Documentation/git-cat-file.txt index 44983b692..ab4dcae21 100644 --- a/Documentation/git-cat-file.txt +++ b/Documentation/git-cat-file.txt @@ -1,6 +1,5 @@ git-cat-file(1) =============== -v0.1, May 2005 NAME ---- @@ -32,7 +31,7 @@ OPTIONS <type>:: Typically this matches the real type of <object> but asking - for a type that can trivially dereferenced from the given + for a type that can trivially be dereferenced from the given <object> is also permitted. An example is to ask for a "tree" with <object> being a commit object that contains it, or to ask for a "blob" with <object> being a tag object that diff --git a/Documentation/git-checkout-index.txt b/Documentation/git-checkout-index.txt index 1ba6fb2d9..613dfabe7 100644 --- a/Documentation/git-checkout-index.txt +++ b/Documentation/git-checkout-index.txt @@ -1,6 +1,5 @@ git-checkout-index(1) ===================== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-cherry-pick.txt b/Documentation/git-cherry-pick.txt index cd5b97d62..26e046779 100644 --- a/Documentation/git-cherry-pick.txt +++ b/Documentation/git-cherry-pick.txt @@ -1,6 +1,5 @@ git-cherry-pick(1) ================== -v0.99.5 Aug 2005 NAME ---- @@ -22,7 +21,7 @@ OPTIONS Commit to cherry-pick. -r:: - Usuall the command appends which commit was + Usually the command appends which commit was cherry-picked after the original commit message when making a commit. This option, '--replay', causes it to use the original commit message intact. This is useful diff --git a/Documentation/git-clone-pack.txt b/Documentation/git-clone-pack.txt index 83d17a055..b58165a5f 100644 --- a/Documentation/git-clone-pack.txt +++ b/Documentation/git-clone-pack.txt @@ -1,6 +1,5 @@ git-clone-pack(1) ================= -v0.1, July 2005 NAME ---- @@ -9,7 +8,7 @@ git-clone-pack - Clones a repository by receiving packed objects. SYNOPSIS -------- -'git-clone-pack' [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...] +'git-clone-pack' [-q] [--keep] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...] DESCRIPTION ----------- @@ -24,12 +23,17 @@ OPTIONS Pass '-q' flag to 'git-unpack-objects'; this makes the cloning process less verbose. +--keep:: + Do not invoke 'git-unpack-objects' on received data, but + create a single packfile out of it instead, and store it + in the object database. + --exec=<git-upload-pack>:: Use this to specify the path to 'git-upload-pack' on the - remote side, if is not found on your $PATH. - Installations of sshd ignores the user's environment + remote side, if it is not found on your $PATH. + Installations of sshd ignore the user's environment setup scripts for login shells (e.g. .bash_profile) and - your privately installed GIT may not be found on the system + your privately installed git may not be found on the system default $PATH. Another workaround suggested is to set up your $PATH in ".bashrc", but this flag is for people who do not want to pay the overhead for non-interactive diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt index 7d713c738..dd92cdefc 100644 --- a/Documentation/git-clone.txt +++ b/Documentation/git-clone.txt @@ -1,6 +1,5 @@ git-clone(1) ============ -v0.1, July 2005 NAME ---- @@ -9,7 +8,7 @@ git-clone - Clones a repository. SYNOPSIS -------- -'git clone' [-l [-s]] [-q] [-n] [-u <upload-pack>] <repository> <directory> +'git-clone' [-l [-s]] [-q] [-n] [-u <upload-pack>] <repository> <directory> DESCRIPTION ----------- diff --git a/Documentation/git-commit-tree.txt b/Documentation/git-commit-tree.txt index 895f73364..d9b0ab071 100644 --- a/Documentation/git-commit-tree.txt +++ b/Documentation/git-commit-tree.txt @@ -1,6 +1,5 @@ git-commit-tree(1) ================== -v0.1, May 2005 NAME ---- @@ -36,7 +35,7 @@ OPTIONS An existing tree object -p <parent commit>:: - Each '-p' indicates a the id of a parent commit object. + Each '-p' indicates the id of a parent commit object. Commit Information diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt index 790a8eb0d..1edc278c6 100644 --- a/Documentation/git-commit.txt +++ b/Documentation/git-commit.txt @@ -1,6 +1,5 @@ git-commit(1) ============= -v0.99.4, Aug 2005 NAME ---- @@ -8,7 +7,7 @@ git-commit - Record your changes SYNOPSIS -------- -'git commit' [-a] [-s] [-v] [(-c | -C) <commit> | -F <file> | -m <msg>] [-e] <file>... +'git-commit' [-a] [-s] [-v] [(-c | -C) <commit> | -F <file> | -m <msg>] [-e] <file>... DESCRIPTION ----------- diff --git a/Documentation/git-convert-objects.txt b/Documentation/git-convert-objects.txt index 6ce62dc67..b1220c06e 100644 --- a/Documentation/git-convert-objects.txt +++ b/Documentation/git-convert-objects.txt @@ -1,10 +1,9 @@ git-convert-objects(1) ====================== -v0.1, May 2005 NAME ---- -git-convert-objects - Converts old-style GIT repository +git-convert-objects - Converts old-style git repository SYNOPSIS @@ -13,7 +12,7 @@ SYNOPSIS DESCRIPTION ----------- -Converts old-style GIT repository to the latest format +Converts old-style git repository to the latest format Author diff --git a/Documentation/git-cvsimport.txt b/Documentation/git-cvsimport.txt index b5753a46d..f5248c91c 100644 --- a/Documentation/git-cvsimport.txt +++ b/Documentation/git-cvsimport.txt @@ -1,6 +1,5 @@ git-cvsimport(1) ================ -v0.1, July 2005 NAME ---- @@ -11,7 +10,7 @@ SYNOPSIS -------- 'git-cvsimport' [ -o <branch-for-HEAD> ] [ -h ] [ -v ] [ -d <CVSROOT> ] [ -p <options-for-cvsps> ] - [ -C <GIT_repository> ] [ -i ] [ -k ] + [ -C <git_repository> ] [ -i ] [ -k ] [ -s <subst> ] [ -m ] [ -M regex ] [ <CVS_module> ] @@ -31,7 +30,7 @@ OPTIONS are supported. -C <target-dir>:: - The GIT repository to import to. If the directory doesn't + The git repository to import to. If the directory doesn't exist, it will be created. Default is the current directory. -i:: diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt index 065f2aa72..a013a58a7 100644 --- a/Documentation/git-daemon.txt +++ b/Documentation/git-daemon.txt @@ -3,7 +3,7 @@ git-daemon(1) NAME ---- -git-daemon - A really simple server for GIT repositories. +git-daemon - A really simple server for git repositories. SYNOPSIS -------- diff --git a/Documentation/git-diff-files.txt b/Documentation/git-diff-files.txt index eb9fb7425..e3873888f 100644 --- a/Documentation/git-diff-files.txt +++ b/Documentation/git-diff-files.txt @@ -1,6 +1,5 @@ git-diff-files(1) ================= -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-diff-index.txt b/Documentation/git-diff-index.txt index 8b6a953c0..2fc3eed71 100644 --- a/Documentation/git-diff-index.txt +++ b/Documentation/git-diff-index.txt @@ -1,6 +1,5 @@ git-diff-index(1) ================= -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-diff-stages.txt b/Documentation/git-diff-stages.txt index 276d7bdc4..28c60fc7e 100644 --- a/Documentation/git-diff-stages.txt +++ b/Documentation/git-diff-stages.txt @@ -1,6 +1,5 @@ git-diff-stages(1) ================== -v0.1, June 2005 NAME ---- diff --git a/Documentation/git-diff-tree.txt b/Documentation/git-diff-tree.txt index 339a92287..dcfb9e18c 100644 --- a/Documentation/git-diff-tree.txt +++ b/Documentation/git-diff-tree.txt @@ -1,6 +1,5 @@ git-diff-tree(1) ================ -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-fetch-pack.txt b/Documentation/git-fetch-pack.txt index 1d281820c..ea6faab05 100644 --- a/Documentation/git-fetch-pack.txt +++ b/Documentation/git-fetch-pack.txt @@ -1,6 +1,5 @@ git-fetch-pack(1) ================= -v0.1, July 2005 NAME ---- @@ -35,7 +34,7 @@ OPTIONS remote side, if is not found on your $PATH. Installations of sshd ignores the user's environment setup scripts for login shells (e.g. .bash_profile) and - your privately installed GIT may not be found on the system + your privately installed git may not be found on the system default $PATH. Another workaround suggested is to set up your $PATH in ".bashrc", but this flag is for people who do not want to pay the overhead for non-interactive diff --git a/Documentation/git-fetch.txt b/Documentation/git-fetch.txt index 1fa9f4dbf..c0b5aac5f 100644 --- a/Documentation/git-fetch.txt +++ b/Documentation/git-fetch.txt @@ -1,6 +1,5 @@ git-fetch(1) ============ -v0.99.5, Aug 2005 NAME ---- diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt index a1483ffd0..f3ef4c1e0 100644 --- a/Documentation/git-format-patch.txt +++ b/Documentation/git-format-patch.txt @@ -8,7 +8,7 @@ git-format-patch - Prepare patches for e-mail submission. SYNOPSIS -------- -'git-format-patch' [-n][-o <dir>][-k][--mbox][--diff-options] <his> [<mine>] +'git-format-patch' [-n][-o <dir>|--stdout][-k][--mbox][--diff-options] <his> [<mine>] DESCRIPTION ----------- @@ -54,6 +54,10 @@ OPTIONS concatenated together and fed to `git-applymbox`. Implies --author and --date. +--stdout:: + This flag generates the mbox formatted output to the + standard output, instead of saving them into a file per + patch and implies --mbox. Author ------ diff --git a/Documentation/git-fsck-objects.txt b/Documentation/git-fsck-objects.txt index ba251a515..5dc9dbdd7 100644 --- a/Documentation/git-fsck-objects.txt +++ b/Documentation/git-fsck-objects.txt @@ -1,6 +1,5 @@ git-fsck-objects(1) =================== -v0.1, May 2005 NAME ---- @@ -42,22 +41,22 @@ index file and all SHA1 references in .git/refs/* as heads. ($GIT_DIR/objects), making sure that it is consistent and complete without referring to objects found in alternate object pools listed in GIT_ALTERNATE_OBJECT_DIRECTORIES, - nor packed GIT archives found in $GIT_DIR/objects/pack; + nor packed git archives found in $GIT_DIR/objects/pack; cannot be used with --full. --full:: Check not just objects in GIT_OBJECT_DIRECTORY ($GIT_DIR/objects), but also the ones found in alternate object pools listed in GIT_ALTERNATE_OBJECT_DIRECTORIES, - and in packed GIT archives found in $GIT_DIR/objects/pack + and in packed git archives found in $GIT_DIR/objects/pack and corresponding pack subdirectories in alternate object pools; cannot be used with --standalone. --strict:: Enable more strict checking, namely to catch a file mode recorded with g+w bit set, which was created by older - versions of GIT. Existing repositories, including the - Linux kernel, GIT itself, and sparse repository have old + versions of git. Existing repositories, including the + Linux kernel, git itself, and sparse repository have old objects that triggers this check, but it is recommended to check new projects with this flag. @@ -81,7 +80,7 @@ Any corrupt objects you will have to find in backups or other archives the hopes that somebody else has the object you have corrupted). Of course, "valid tree" doesn't mean that it wasn't generated by some -evil person, and the end result might be crap. Git is a revision +evil person, and the end result might be crap. git is a revision tracking system, not a quality assurance system ;) Extracted Diagnostics diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt index 5f082167c..017579348 100644 --- a/Documentation/git-grep.txt +++ b/Documentation/git-grep.txt @@ -1,6 +1,5 @@ git-grep(1) =========== -v0.99.6, Sep 2005 NAME ---- diff --git a/Documentation/git-hash-object.txt b/Documentation/git-hash-object.txt index 935cc66b3..9239f1113 100644 --- a/Documentation/git-hash-object.txt +++ b/Documentation/git-hash-object.txt @@ -1,6 +1,5 @@ git-hash-object(1) ================== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-http-fetch.txt b/Documentation/git-http-fetch.txt index c03427256..088624f6c 100644 --- a/Documentation/git-http-fetch.txt +++ b/Documentation/git-http-fetch.txt @@ -1,10 +1,9 @@ git-http-fetch(1) ================= -v0.1, May 2005 NAME ---- -git-http-fetch - Downloads a remote GIT repository via HTTP +git-http-fetch - Downloads a remote git repository via HTTP SYNOPSIS @@ -13,7 +12,7 @@ SYNOPSIS DESCRIPTION ----------- -Downloads a remote GIT repository via HTTP. +Downloads a remote git repository via HTTP. -c:: Get the commit objects. diff --git a/Documentation/git-index-pack.txt b/Documentation/git-index-pack.txt new file mode 100644 index 000000000..71ce55727 --- /dev/null +++ b/Documentation/git-index-pack.txt @@ -0,0 +1,44 @@ +git-index-pack(1) +================= + +NAME +---- +git-index-pack - Build pack index file for an existing packed archive + + +SYNOPSIS +-------- +'git-index-pack' [-o <index-file>] <pack-file> + + +DESCRIPTION +----------- +Reads a packed archive (.pack) from the specified file, and +builds a pack index file (.idx) for it. The packed archive +together with the pack index can then be placed in the +objects/pack/ directory of a git repository. + + +OPTIONS +------- +-o <index-file>:: + Write the generated pack index into the specified + file. Without this option the name of pack index + file is constructed from the name of packed archive + file by replacing .pack with .idx (and the program + fails if the name of packed archive does not end + with .pack). + + +Author +------ +Written by Sergey Vlasov <vsu@altlinux.ru> + +Documentation +------------- +Documentation by Sergey Vlasov + +GIT +--- +Part of the gitlink:git[7] suite + diff --git a/Documentation/git-init-db.txt b/Documentation/git-init-db.txt index ef2d04a61..ef1826ae6 100644 --- a/Documentation/git-init-db.txt +++ b/Documentation/git-init-db.txt @@ -1,6 +1,5 @@ git-init-db(1) ============== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-local-fetch.txt b/Documentation/git-local-fetch.txt index ccf973592..87abec1c4 100644 --- a/Documentation/git-local-fetch.txt +++ b/Documentation/git-local-fetch.txt @@ -1,10 +1,9 @@ git-local-fetch(1) ================== -v0.1, May 2005 NAME ---- -git-local-fetch - Duplicates another GIT repository on a local system +git-local-fetch - Duplicates another git repository on a local system SYNOPSIS @@ -13,7 +12,7 @@ SYNOPSIS DESCRIPTION ----------- -Duplicates another GIT repository on a local system. +Duplicates another git repository on a local system. OPTIONS ------- diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt index 2a0e5acea..13a399830 100644 --- a/Documentation/git-log.txt +++ b/Documentation/git-log.txt @@ -1,6 +1,5 @@ git-log(1) ========== -v0.99.4, Aug 2005 NAME ---- @@ -9,7 +8,7 @@ git-log - Show commit logs SYNOPSIS -------- -'git log' <option>... +'git-log' <option>... DESCRIPTION ----------- diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt index 940285f8c..f4501d62c 100644 --- a/Documentation/git-ls-files.txt +++ b/Documentation/git-ls-files.txt @@ -50,7 +50,7 @@ OPTIONS -k|--killed:: Show files on the filesystem that need to be removed due - to file/directory conflicts for checkout-cache to + to file/directory conflicts for checkout-index to succeed. -z:: diff --git a/Documentation/git-ls-remote.txt b/Documentation/git-ls-remote.txt index 89bd609d6..c0a80d408 100644 --- a/Documentation/git-ls-remote.txt +++ b/Documentation/git-ls-remote.txt @@ -1,6 +1,5 @@ git-ls-remote(1) ================ -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-ls-tree.txt b/Documentation/git-ls-tree.txt index 0d159fd5c..cdc5654a9 100644 --- a/Documentation/git-ls-tree.txt +++ b/Documentation/git-ls-tree.txt @@ -1,6 +1,5 @@ git-ls-tree(1) ============== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-mailsplit.txt b/Documentation/git-mailsplit.txt index 557d2e905..03a947766 100644 --- a/Documentation/git-mailsplit.txt +++ b/Documentation/git-mailsplit.txt @@ -7,7 +7,7 @@ git-mailsplit - Totally braindamaged mbox splitter program. SYNOPSIS -------- -'git-mailsplit' <mbox> <directory> +'git-mailsplit' [-d<prec>] [<mbox>] <directory> DESCRIPTION ----------- @@ -17,14 +17,23 @@ directory so you can process them further from there. OPTIONS ------- <mbox>:: - Mbox file to split. + Mbox file to split. If not given, the mbox is read from + the standard input. <directory>:: Directory in which to place the individual messages. +-d<prec>:: + Instead of the default 4 digits with leading zeros, + different precision can be specified for the generated + filenames. + + Author ------ Written by Linus Torvalds <torvalds@osdl.org> +and Junio C Hamano <junkio@cox.net> + Documentation -------------- diff --git a/Documentation/git-merge-base.txt b/Documentation/git-merge-base.txt index e4692163e..d1d56f194 100644 --- a/Documentation/git-merge-base.txt +++ b/Documentation/git-merge-base.txt @@ -1,6 +1,5 @@ git-merge-base(1) ================= -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-merge-index.txt b/Documentation/git-merge-index.txt index 5caee90ad..d072fdaa4 100644 --- a/Documentation/git-merge-index.txt +++ b/Documentation/git-merge-index.txt @@ -1,6 +1,5 @@ git-merge-index(1) ================== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-merge-one-file.txt b/Documentation/git-merge-one-file.txt index 712739777..86aad37c6 100644 --- a/Documentation/git-merge-one-file.txt +++ b/Documentation/git-merge-one-file.txt @@ -1,6 +1,5 @@ git-merge-one-file(1) ===================== -v0.99.4, Aug 2005 NAME ---- diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt index dca363dd5..a007a8b15 100644 --- a/Documentation/git-merge.txt +++ b/Documentation/git-merge.txt @@ -1,6 +1,5 @@ git-merge(1) ============ -v0.99.6, Sep 2005 NAME ---- diff --git a/Documentation/git-mktag.txt b/Documentation/git-mktag.txt index 44ed4b540..2860a3d1b 100644 --- a/Documentation/git-mktag.txt +++ b/Documentation/git-mktag.txt @@ -1,6 +1,5 @@ git-mktag(1) ============ -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-octopus.txt b/Documentation/git-octopus.txt index 881c317ac..6e32ea347 100644 --- a/Documentation/git-octopus.txt +++ b/Documentation/git-octopus.txt @@ -1,6 +1,5 @@ git-octopus(1) ============== -v0.99.5, Aug 2005 NAME ---- diff --git a/Documentation/git-pack-objects.txt b/Documentation/git-pack-objects.txt index 44aba940d..caf5d0d1e 100644 --- a/Documentation/git-pack-objects.txt +++ b/Documentation/git-pack-objects.txt @@ -1,6 +1,5 @@ git-pack-objects(1) =================== -v0.1, July 2005 NAME ---- @@ -31,7 +30,7 @@ transport by their peers. Placing both in the pack/ subdirectory of $GIT_OBJECT_DIRECTORY (or any of the directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES) -enables GIT to read from such an archive. +enables git to read from such an archive. OPTIONS diff --git a/Documentation/git-peek-remote.txt b/Documentation/git-peek-remote.txt index c1527f1bc..915d3f8a0 100644 --- a/Documentation/git-peek-remote.txt +++ b/Documentation/git-peek-remote.txt @@ -1,6 +1,5 @@ git-peek-remote(1) ================== -v0.1, July 2005 NAME ---- @@ -23,7 +22,7 @@ OPTIONS remote side, if it is not found on your $PATH. Some installations of sshd ignores the user's environment setup scripts for login shells (e.g. .bash_profile) and - your privately installed GIT may not be found on the system + your privately installed git may not be found on the system default $PATH. Another workaround suggested is to set up your $PATH in ".bashrc", but this flag is for people who do not want to pay the overhead for non-interactive diff --git a/Documentation/git-prune-packed.txt b/Documentation/git-prune-packed.txt index 5c48a0937..28a1500d3 100644 --- a/Documentation/git-prune-packed.txt +++ b/Documentation/git-prune-packed.txt @@ -1,6 +1,5 @@ git-prune-packed(1) ===================== -v0.1, August 2005 NAME ---- diff --git a/Documentation/git-prune.txt b/Documentation/git-prune.txt index d1676cbfc..3367c9b21 100644 --- a/Documentation/git-prune.txt +++ b/Documentation/git-prune.txt @@ -1,6 +1,5 @@ git-prune(1) ============ -v0.99.5, Aug 2005 NAME ---- diff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt index c35d2eb54..952779292 100644 --- a/Documentation/git-pull.txt +++ b/Documentation/git-pull.txt @@ -1,6 +1,5 @@ git-pull(1) =========== -v0.99.4, Aug 2005 NAME ---- diff --git a/Documentation/git-read-tree.txt b/Documentation/git-read-tree.txt index 5653bacca..7db5fb579 100644 --- a/Documentation/git-read-tree.txt +++ b/Documentation/git-read-tree.txt @@ -1,6 +1,5 @@ git-read-tree(1) ================ -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-receive-pack.txt b/Documentation/git-receive-pack.txt index fb4b76b6c..8afde1437 100644 --- a/Documentation/git-receive-pack.txt +++ b/Documentation/git-receive-pack.txt @@ -1,6 +1,5 @@ git-receive-pack(1) =================== -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-rename.txt b/Documentation/git-rename.txt index 21928dc07..583cb0315 100644 --- a/Documentation/git-rename.txt +++ b/Documentation/git-rename.txt @@ -1,6 +1,5 @@ git-rename(1) ============= -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt index bd830ada2..0c1ae49ed 100644 --- a/Documentation/git-repack.txt +++ b/Documentation/git-repack.txt @@ -1,6 +1,5 @@ git-repack(1) ============= -v0.99.5, August 2005 NAME ---- diff --git a/Documentation/git-resolve.txt b/Documentation/git-resolve.txt index 7d3eb7903..4e57c2b28 100644 --- a/Documentation/git-resolve.txt +++ b/Documentation/git-resolve.txt @@ -1,6 +1,5 @@ git-resolve(1) ============== -v0.99.5, Aug 2005 NAME ---- @@ -9,7 +8,7 @@ git-resolve - Merge two commits SYNOPSIS -------- -'git resolve' <current> <merged> <message> +'git-resolve' <current> <merged> <message> DESCRIPTION ----------- diff --git a/Documentation/git-rev-list.txt b/Documentation/git-rev-list.txt index f386a3a79..7dbb7c660 100644 --- a/Documentation/git-rev-list.txt +++ b/Documentation/git-rev-list.txt @@ -1,6 +1,5 @@ git-rev-list(1) =============== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-rev-parse.txt b/Documentation/git-rev-parse.txt index e2d94ff33..694f3a09d 100644 --- a/Documentation/git-rev-parse.txt +++ b/Documentation/git-rev-parse.txt @@ -54,13 +54,13 @@ OPTIONS `git-diff-\*`). --not:: - When showing object names, prefix them with '^' and - strip '^' prefix from the object names that already have + When showing object names, prefix them with '{caret}' and + strip '{caret}' prefix from the object names that already have one. --symbolic:: Usually the object names are output in SHA1 form (with - possible '^' prefix); this option makes them output in a + possible '{caret}' prefix); this option makes them output in a form as close to the original input as possible. @@ -91,24 +91,25 @@ what is called an 'extended SHA1' syntax. * A symbolic ref name. E.g. 'master' typically means the commit object referenced by $GIT_DIR/refs/heads/master. If you happen to have both heads/master and tags/master, you can - explicitly say 'heads/master' to tell GIT which one you mean. + explicitly say 'heads/master' to tell git which one you mean. -* A suffix '^' to a revision parameter means the first parent of - that commit object. '^<n>' means the <n>th parent (i.e. - 'rev^' - is equivalent to 'rev^1'). As a special rule, - 'rev^0' means the commit itself and is used when 'rev' is the +* A suffix '{caret}' to a revision parameter means the first parent of + that commit object. '{caret}<n>' means the <n>th parent (i.e. + 'rev{caret}' + is equivalent to 'rev{caret}1'). As a special rule, + 'rev{caret}0' means the commit itself and is used when 'rev' is the object name of a tag object that refers to a commit object. * A suffix '~<n>' to a revision parameter means the commit object that is the <n>th generation grand-parent of the named commit object, following only the first parent. I.e. rev~3 is - equivalent to rev^^^ which is equivalent to rev^1^1^1. + equivalent to rev{caret}{caret}{caret} which is equivalent to\ + rev{caret}1{caret}1{caret}1. -'git-rev-parse' also accepts a prefix '^' to revision parameter, +'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 '^r1 r2' +between them. I.e. 'r1..r2' is equivalent to saying '{caret}r1 r2' Author diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index b95e33db5..b9bec55e5 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -1,6 +1,5 @@ git-send-email(1) ================= -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-send-pack.txt b/Documentation/git-send-pack.txt index 219dfc2ef..577f06a21 100644 --- a/Documentation/git-send-pack.txt +++ b/Documentation/git-send-pack.txt @@ -1,6 +1,5 @@ git-send-pack(1) ================ -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-shortlog.txt b/Documentation/git-shortlog.txt index a852e9b86..65ca77fbf 100644 --- a/Documentation/git-shortlog.txt +++ b/Documentation/git-shortlog.txt @@ -1,6 +1,5 @@ git-shortlog(1) =============== -v0.99.4, Aug 2005 NAME ---- @@ -9,7 +8,7 @@ git-shortlog - Summarize 'git log' output. SYNOPSIS -------- -'git log --pretty=short | git shortlog' +'git-log --pretty=short | git shortlog' DESCRIPTION ----------- diff --git a/Documentation/git-show-branch.txt b/Documentation/git-show-branch.txt index 5b80d5aa2..c6c97b21c 100644 --- a/Documentation/git-show-branch.txt +++ b/Documentation/git-show-branch.txt @@ -1,6 +1,5 @@ git-show-branch(1) ================== -v0.99.5, Aug 2005 NAME ---- @@ -8,7 +7,7 @@ git-show-branch - Show branches and their commits. SYNOPSIS -------- -'git show-branch [--all] [--heads] [--tags] [--more=<n> | --list | --independent | --merge-base] <reference>...' +'git-show-branch [--all] [--heads] [--tags] [--more=<n> | --list | --independent | --merge-base] [--no-name | --sha1-name] <reference>...' DESCRIPTION ----------- @@ -45,6 +44,15 @@ OPTIONS Among the <reference>s given, display only the ones that cannot be reached from any other <reference>. +--no-name:: + Do not show naming strings for each commit. + +--sha1-name:: + Instead of naming the commits using the path to reach + them from heads (e.g. "master~2" to mean the grandparent + of "master"), name them with the unique prefix of their + object names. + Note that --more, --list, --independent and --merge-base options are mutually exclusive. @@ -89,21 +97,6 @@ whose commit message is "Add 'git show-branch'. "fixes" branch adds one commit 'Introduce "reset type"'. "mhf" branch has many other commits. -When only one head is given, the output format changes slightly -to conserve space. The '+' sign to show which commit is -reachable from which head and the first N lines to show the list -of heads being displayed are both meaningless so they are -omitted. Also the label given to each commit does not repeat -the name of the branch because it is obvious. - ------------------------------------------------- -$ git show-branch --more=4 master -[master] Add 'git show-branch'. -[~1] Add a new extended SHA1 syntax <name>~<num> -[~2] Fix "git-diff A B" -[~3] git-ls-files: generalized pathspecs -[~4] Make "git-ls-files" work in subdirectories ------------------------------------------------- Author ------ diff --git a/Documentation/git-show-index.txt b/Documentation/git-show-index.txt index 72720ada2..be09b62be 100644 --- a/Documentation/git-show-index.txt +++ b/Documentation/git-show-index.txt @@ -1,6 +1,5 @@ git-show-index(1) ================= -v0.1, July 2005 NAME ---- @@ -14,7 +13,7 @@ SYNOPSIS DESCRIPTION ----------- -Reads given idx file for packed GIT archive created with +Reads given idx file for packed git archive created with git-pack-objects command, and dumps its contents. The information it outputs is subset of what you can get from diff --git a/Documentation/git-ssh-fetch.txt b/Documentation/git-ssh-fetch.txt index e3887ace0..b7116b30e 100644 --- a/Documentation/git-ssh-fetch.txt +++ b/Documentation/git-ssh-fetch.txt @@ -1,6 +1,5 @@ git-ssh-fetch(1) ================ -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-ssh-upload.txt b/Documentation/git-ssh-upload.txt index b62501981..702674e45 100644 --- a/Documentation/git-ssh-upload.txt +++ b/Documentation/git-ssh-upload.txt @@ -1,6 +1,5 @@ git-ssh-upload(1) ================= -v0.1, Jun 2005 NAME ---- diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt index 6d49a5aa0..753fc0866 100644 --- a/Documentation/git-status.txt +++ b/Documentation/git-status.txt @@ -1,6 +1,5 @@ git-status(1) ============= -v0.99.4, Aug 2005 NAME ---- @@ -9,7 +8,7 @@ git-status - Show working tree status. SYNOPSIS -------- -'git status' +'git-status' DESCRIPTION ----------- diff --git a/Documentation/git-svnimport.txt b/Documentation/git-svnimport.txt index a27a83596..88bdc08eb 100644 --- a/Documentation/git-svnimport.txt +++ b/Documentation/git-svnimport.txt @@ -29,7 +29,7 @@ directories for branches, and "/tags/FOO" directories for tags. Other subdirectories are ignored. git-svnimport creates a file ".git/svn2git", which is required for -incremental SVN imports. +incremental SVN imports. OPTIONS ------- @@ -49,27 +49,27 @@ When importing incementally, you might need to edit the .git/svn2git file. -t <trunk_subdir>:: Name the SVN trunk. Default "trunk". - + -T <tag_subdir>:: Name the SVN subdirectory for tags. Default "tags". - + -b <branch_subdir>:: Name the SVN subdirectory for branches. Default "branches". - + -o <branch-for-HEAD>:: The 'trunk' branch from SVN is imported to the 'origin' branch within the git repository. Use this option if you want to import into a different branch. --m:: +-m:: Attempt to detect merges based on the commit message. This option - will enable default regexes that try to capture the name source - branch name from the commit message. + will enable default regexes that try to capture the name source + branch name from the commit message. -M <regex>:: Attempt to detect merges based on the commit message with a custom - regex. It can be used with -m to also see the default regexes. - You must escape forward slashes. + regex. It can be used with -m to also see the default regexes. + You must escape forward slashes. -l <max_num_changes>:: Limit the number of SVN changesets we pull before quitting. diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt index 1e0d4f5f4..3984812ce 100644 --- a/Documentation/git-tag.txt +++ b/Documentation/git-tag.txt @@ -1,28 +1,34 @@ git-tag(1) ========== -v0.99.4, Aug 2005 NAME ---- git-tag - Create a tag object signed with GPG - SYNOPSIS -------- -'git-tag' [-s | -a] [-f] <name> +'git-tag' [-a | -s | -u <key-id>] [-f] [-m <msg>] <name> [<head>] DESCRIPTION ----------- -Adds a "tag" reference in .git/refs/tags/ +Adds a 'tag' reference in .git/refs/tags/ + +Unless `-f` is given, the tag must not yet exist in +`.git/refs/tags/` directory. -Unless "-f" is given, the tag must not yet exist in ".git/refs/tags" +If one of `-a`, `-s`, or `-u <key-id>` is passed, the command +creates a 'tag' object, and requires the tag message. Unless +`-m <msg>` is given, an editor is started for the user to type +in the tag message. -If "-s" or "-a" is passed, the user will be prompted for a tag message. -and a tag object is created. Otherwise just the SHA1 object -name of the commit object is written. +Otherwise just the SHA1 object name of the commit object is +written (i.e. an lightweight tag). -A GnuPG signed tag object will be created when "-s" is used. +A GnuPG signed tag object will be created when `-s` or `-u +<key-id>` is used. When `-u <key-id>` is not used, the +committer identity for the current user is used to find the +GnuPG key for signing. Author diff --git a/Documentation/git-tar-tree.txt b/Documentation/git-tar-tree.txt index 480a0cf0b..2139b6ff8 100644 --- a/Documentation/git-tar-tree.txt +++ b/Documentation/git-tar-tree.txt @@ -1,6 +1,5 @@ git-tar-tree(1) =============== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-unpack-file.txt b/Documentation/git-unpack-file.txt index 3903b2d99..213dc8196 100644 --- a/Documentation/git-unpack-file.txt +++ b/Documentation/git-unpack-file.txt @@ -1,6 +1,5 @@ git-unpack-file(1) ================== -v0.1, May 2005 NAME ---- diff --git a/Documentation/git-unpack-objects.txt b/Documentation/git-unpack-objects.txt index 9b982d996..b716ba1ad 100644 --- a/Documentation/git-unpack-objects.txt +++ b/Documentation/git-unpack-objects.txt @@ -1,6 +1,5 @@ git-unpack-objects(1) ===================== -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-update-server-info.txt b/Documentation/git-update-server-info.txt index 2efd5400a..3d0dea07f 100644 --- a/Documentation/git-update-server-info.txt +++ b/Documentation/git-update-server-info.txt @@ -1,6 +1,5 @@ git-update-server-info(1) ========================= -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-upload-pack.txt b/Documentation/git-upload-pack.txt index 98815b6a1..3d8f8ef66 100644 --- a/Documentation/git-upload-pack.txt +++ b/Documentation/git-upload-pack.txt @@ -1,6 +1,5 @@ git-upload-pack(1) ================== -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-var.txt b/Documentation/git-var.txt index c1c717208..c22d34f5f 100644 --- a/Documentation/git-var.txt +++ b/Documentation/git-var.txt @@ -1,6 +1,5 @@ git-var(1) ========== -v0.1, July 2005 NAME ---- diff --git a/Documentation/git-verify-pack.txt b/Documentation/git-verify-pack.txt index b100aa765..cd74ffd39 100644 --- a/Documentation/git-verify-pack.txt +++ b/Documentation/git-verify-pack.txt @@ -1,10 +1,9 @@ git-verify-pack(1) ================== -v0.1, June 2005 NAME ---- -git-verify-pack - Validate packed GIT archive files. +git-verify-pack - Validate packed git archive files. SYNOPSIS @@ -14,7 +13,7 @@ SYNOPSIS DESCRIPTION ----------- -Reads given idx file for packed GIT archive created with +Reads given idx file for packed git archive created with git-pack-objects command and verifies idx file and the corresponding pack file. diff --git a/Documentation/git-whatchanged.txt b/Documentation/git-whatchanged.txt index 056a9697c..8a2212de6 100644 --- a/Documentation/git-whatchanged.txt +++ b/Documentation/git-whatchanged.txt @@ -1,6 +1,5 @@ git-whatchanged(1) ================== -v0.99.4, Aug 2005 NAME ---- @@ -9,7 +8,7 @@ git-whatchanged - Show logs with difference each commit introduces. SYNOPSIS -------- -'git whatchanged' <option>... +'git-whatchanged' <option>... DESCRIPTION ----------- diff --git a/Documentation/git-write-tree.txt b/Documentation/git-write-tree.txt index 71e16d128..51be44d1f 100644 --- a/Documentation/git-write-tree.txt +++ b/Documentation/git-write-tree.txt @@ -1,6 +1,5 @@ git-write-tree(1) ================= -v0.1, May 2005 NAME ---- diff --git a/Documentation/git.txt b/Documentation/git.txt index e14102127..796c4f61e 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -1,6 +1,5 @@ git(7) ====== -v0.99.6, Sep 2005 NAME ---- @@ -69,6 +68,9 @@ gitlink:git-commit-tree[1]:: gitlink:git-hash-object[1]:: Computes the object ID from a file. +gitlink:git-index-pack.html[1]:: + Build pack index file for an existing packed archive. + gitlink:git-init-db[1]:: Creates an empty git object database @@ -147,7 +149,7 @@ gitlink:git-var[1]:: Displays a git logical variable gitlink:git-verify-pack[1]:: - Validates packed GIT archive files + Validates packed git archive files The interrogate commands may create files - and you can force them to touch the working file set - but in general they don't @@ -164,11 +166,11 @@ gitlink:git-fetch-pack[1]:: Updates from a remote repository. gitlink:git-http-fetch[1]:: - Downloads a remote GIT repository via HTTP + Downloads a remote git repository via HTTP Previously this command was known as git-http-pull. gitlink:git-local-fetch[1]:: - Duplicates another GIT repository on a local system + Duplicates another git repository on a local system Previously this command was known as git-local-pull. gitlink:git-peek-remote[1]:: @@ -323,7 +325,7 @@ gitlink:git-archimport[1]:: Previously this command was known as git-archimport-script. gitlink:git-convert-objects[1]:: - Converts old-style GIT repository + Converts old-style git repository Previously this command was known as git-convert-cache. gitlink:git-cvsimport[1]:: @@ -361,7 +363,7 @@ gitlink:git-count-objects[1]:: Previously this command was known as git-count-objects-script. gitlink:git-daemon[1]:: - A really simple server for GIT repositories. + A really simple server for git repositories. gitlink:git-get-tar-commit-id[1]:: Extract commit ID from an archive created using git-tar-tree. diff --git a/Documentation/glossary.txt b/Documentation/glossary.txt index a069b7bb0..eb7b47102 100644 --- a/Documentation/glossary.txt +++ b/Documentation/glossary.txt @@ -1,5 +1,5 @@ object:: - The unit of storage in GIT. It is uniquely identified by + The unit of storage in git. It is uniquely identified by the SHA1 of its contents. Consequently, an object can not be changed. diff --git a/Documentation/hooks.txt b/Documentation/hooks.txt index 57f472087..7ee3571bc 100644 --- a/Documentation/hooks.txt +++ b/Documentation/hooks.txt @@ -1,6 +1,5 @@ -Hooks used by GIT +Hooks used by git ================= -v0.99.6, Sep 2005 Hooks are little scripts you can place in `$GIT_DIR/hooks` directory to trigger action at certain points. When diff --git a/Documentation/pull-fetch-param.txt b/Documentation/pull-fetch-param.txt index 8dbddbf63..51222b6f3 100644 --- a/Documentation/pull-fetch-param.txt +++ b/Documentation/pull-fetch-param.txt @@ -6,7 +6,7 @@ =============================================================== - Rsync URL: rsync://remote.machine/path/to/repo.git/ - HTTP(s) URL: http://remote.machine/path/to/repo.git/ -- GIT URL: git://remote.machine/path/to/repo.git/ +- git URL: git://remote.machine/path/to/repo.git/ or remote.machine:/path/to/repo.git/ - Local directory: /path/to/repo.git/ =============================================================== diff --git a/Documentation/repository-layout.txt b/Documentation/repository-layout.txt index d20fa80d8..1b5f22824 100644 --- a/Documentation/repository-layout.txt +++ b/Documentation/repository-layout.txt @@ -1,6 +1,5 @@ -GIT repository layout +git repository layout ===================== -v0.99.5, Sep 2005 You may find these things in your git repository (`.git` directory for a repository associated with your working tree, or @@ -120,7 +119,7 @@ info/grafts:: info/exclude:: This file, by convention among Porcelains, stores the exclude pattern list. `git status` looks at it, but - otherwise it is not looked at by any of the core GIT + otherwise it is not looked at by any of the core git commands. remotes:: diff --git a/Documentation/tutorial.txt b/Documentation/tutorial.txt index 36f42e051..b9f737e96 100644 --- a/Documentation/tutorial.txt +++ b/Documentation/tutorial.txt @@ -1,6 +1,5 @@ A short git tutorial ==================== -v0.99.5, Aug 2005 Introduction ------------ @@ -52,7 +51,9 @@ your new project. You will now have a `.git` directory, and you can inspect that with `ls`. For your new empty project, it should show you three entries, among other things: - - a symlink called `HEAD`, pointing to `refs/heads/master` + - a symlink called `HEAD`, pointing to `refs/heads/master` (if your + platform does not have native symlinks, it is a file containing the + line "ref: refs/heads/master") + Don't worry about the fact that the file that the `HEAD` link points to doesn't even exist yet -- you haven't created the commit that will @@ -161,7 +162,7 @@ you'll have to use the object name, not the filename of the object: git-cat-file -t 557db03de997c86a4a028e1ebd3a1ceb225be238 where the `-t` tells `git-cat-file` to tell you what the "type" of the -object is. Git will tell you that you have a "blob" object (ie just a +object is. git will tell you that you have a "blob" object (ie just a regular file), and you can see the contents with git-cat-file "blob" 557db03 @@ -228,6 +229,7 @@ which will spit out ------------ diff --git a/hello b/hello +index 557db03..263414f 100644 --- a/hello +++ b/hello @@ -1 +1,2 @@ @@ -290,13 +292,16 @@ also wants to get a commit message on its standard input, and it will write out the resulting object name for the commit to its standard output. -And this is where we start using the `.git/HEAD` file. The `HEAD` file is -supposed to contain the reference to the top-of-tree, and since that's -exactly what `git-commit-tree` spits out, we can do this all with a simple -shell pipeline: +And this is where we create the `.git/refs/heads/master` file +which is pointed at by `HEAD`. This file is supposed to contain +the reference to the top-of-tree of the master branch, and since +that's exactly what `git-commit-tree` spits out, we can do this +all with a sequence of simple shell commands: ------------------------------------------------ -echo "Initial commit" | git-commit-tree $(git-write-tree) > .git/HEAD +tree=$(git-write-tree) +commit=$(echo 'Initial commit' | git-commit-tree $tree) +git-update-ref HEAD $(commit) ------------------------------------------------ which will say: @@ -378,7 +383,7 @@ come from the working tree or not. This is not hard to understand, as soon as you realize that git simply never knows (or cares) about files that it is not told about -explicitly. Git will never go *looking* for files to compare, it +explicitly. git will never go *looking* for files to compare, it expects you to tell it what the files are, and that's what the index is there for. ================ @@ -544,7 +549,7 @@ name for the state at that point. Copying repositories -------------------- -Git repositories are normally totally self-sufficient, and it's worth noting +git repositories are normally totally self-sufficient, and it's worth noting that unlike CVS, for example, there is no separate notion of "repository" and "working tree". A git repository normally *is* the working tree, with the local git information hidden in the `.git` @@ -692,7 +697,9 @@ other point in the history than the current `HEAD`, you can do so by just telling `git checkout` what the base of the checkout would be. In other words, if you have an earlier tag or branch, you'd just do - git checkout -b mybranch earlier-commit +------------ +git checkout -b mybranch earlier-commit +------------ and it would create the new branch `mybranch` at the earlier commit, and check out the state at that time. @@ -700,17 +707,29 @@ and check out the state at that time. You can always just jump back to your original `master` branch by doing - git checkout master +------------ +git checkout master +------------ (or any other branch-name, for that matter) and if you forget which branch you happen to be on, a simple - ls -l .git/HEAD +------------ +ls -l .git/HEAD +------------ -will tell you where it's pointing. To get the list of branches -you have, you can say +will tell you where it's pointing (Note that on platforms with bad or no +symlink support, you have to execute - git branch +------------ +cat .git/HEAD +------------ + +instead). To get the list of branches you have, you can say + +------------ +git branch +------------ which is nothing more than a simple script around `ls .git/refs/heads`. There will be asterisk in front of the branch you are currently on. @@ -718,7 +737,9 @@ There will be asterisk in front of the branch you are currently on. Sometimes you may wish to create a new branch _without_ actually checking it out and switching to it. If so, just use the command - git branch <branchname> [startingpoint] +------------ +git branch <branchname> [startingpoint] +------------ which will simply _create_ the branch, but will not do anything further. You can then later -- once you decide that you want to actually develop @@ -844,7 +865,6 @@ $ git show-branch master mybranch ! [mybranch] Some work. -- + [master] Merged "mybranch" changes. -+ [master~1] Some fun. ++ [mybranch] Some work. ------------------------------------------------ @@ -871,8 +891,10 @@ Now, let's pretend you are the one who did all the work in to the `master` branch. Let's go back to `mybranch`, and run resolve to get the "upstream changes" back to your branch. - git checkout mybranch - git resolve HEAD master "Merge upstream changes." +------------ +git checkout mybranch +git resolve HEAD master "Merge upstream changes." +------------ This outputs something like this (the actual commit object names would be different) @@ -951,7 +973,7 @@ This transport is the same as SSH transport but uses `sh` to run both ends on the local machine instead of running other end on the remote machine via `ssh`. -GIT Native:: +git Native:: `git://remote.machine/path/to/repo.git/` + This transport was designed for anonymous downloading. Like SSH @@ -972,13 +994,13 @@ necessary objects. Because of this behaviour, they are sometimes also called 'commit walkers'. + The 'commit walkers' are sometimes also called 'dumb -transports', because they do not require any GIT aware smart -server like GIT Native transport does. Any stock HTTP server +transports', because they do not require any git aware smart +server like git Native transport does. Any stock HTTP server would suffice. + There are (confusingly enough) `git-ssh-fetch` and `git-ssh-upload` programs, which are 'commit walkers'; they outlived their -usefulness when GIT Native and SSH transports were introduced, +usefulness when git Native and SSH transports were introduced, and not used by `git pull` or `git push` scripts. Once you fetch from the remote repository, you `resolve` that @@ -1082,19 +1104,23 @@ done only once. on the remote machine. The communication between the two over the network internally uses an SSH connection. -Your private repository's GIT directory is usually `.git`, but +Your private repository's git directory is usually `.git`, but your public repository is often named after the project name, i.e. `<project>.git`. Let's create such a public repository for project `my-git`. After logging into the remote machine, create an empty directory: - mkdir my-git.git +------------ +mkdir my-git.git +------------ -Then, make that directory into a GIT repository by running +Then, make that directory into a git repository by running `git init-db`, but this time, since its name is not the usual `.git`, we do things slightly differently: - GIT_DIR=my-git.git git-init-db +------------ +GIT_DIR=my-git.git git-init-db +------------ Make sure this directory is available for others you want your changes to be pulled by via the transport of your choice. Also @@ -1118,7 +1144,9 @@ Your "public repository" is now ready to accept your changes. Come back to the machine you have your private repository. From there, run this command: - git push <public-host>:/path/to/my-git.git master +------------ +git push <public-host>:/path/to/my-git.git master +------------ This synchronizes your public repository to match the named branch head (i.e. `master` in this case) and objects reachable @@ -1128,7 +1156,9 @@ As a real example, this is how I update my public git repository. Kernel.org mirror network takes care of the propagation to other publicly visible machines: - git push master.kernel.org:/pub/scm/git/git.git/ +------------ +git push master.kernel.org:/pub/scm/git/git.git/ +------------ Packing your repository @@ -1141,7 +1171,9 @@ not so convenient to transport over the network. Since git objects are immutable once they are created, there is a way to optimize the storage by "packing them together". The command - git repack +------------ +git repack +------------ will do it for you. If you followed the tutorial examples, you would have accumulated about 17 objects in `.git/objects/??/` @@ -1165,7 +1197,9 @@ Our programs are always perfect ;-). Once you have packed objects, you do not need to leave the unpacked objects that are contained in the pack file anymore. - git prune-packed +------------ +git prune-packed +------------ would remove them for you. |