From 215a7ad1ef790467a4cd3f0dcffbd6e5f04c38f7 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 7 Sep 2005 17:26:23 -0700 Subject: Big tool rename. As promised, this is the "big tool rename" patch. The primary differences since 0.99.6 are: (1) git-*-script are no more. The commands installed do not have any such suffix so users do not have to remember if something is implemented as a shell script or not. (2) Many command names with 'cache' in them are renamed with 'index' if that is what they mean. There are backward compatibility symblic links so that you and Porcelains can keep using the old names, but the backward compatibility support is expected to be removed in the near future. Signed-off-by: Junio C Hamano diff --git a/.gitignore b/.gitignore index 245f54e..12b0137 100644 --- a/.gitignore +++ b/.gitignore @@ -1,28 +1,28 @@ git-apply git-build-rev-cache git-cat-file -git-checkout-cache +git-checkout-index git-clone-pack git-commit-tree -git-convert-cache +git-convert-objects git-daemon -git-diff-cache +git-diff-index git-diff-files git-diff-helper git-diff-stages git-diff-tree git-export git-fetch-pack -git-fsck-cache +git-fsck-objects git-get-tar-commit-id git-hash-object -git-http-pull +git-http-fetch git-init-db -git-local-pull +git-local-fetch git-ls-files git-ls-tree git-merge-base -git-merge-cache +git-merge-index git-mktag git-pack-objects git-patch-id @@ -37,13 +37,13 @@ git-send-pack git-show-branch git-show-index git-show-rev-cache -git-ssh-pull -git-ssh-push +git-ssh-fetch +git-ssh-upload git-stripspace git-tar-tree git-unpack-file git-unpack-objects -git-update-cache +git-update-index git-update-server-info git-upload-pack git-var diff --git a/Documentation/diff-format.txt b/Documentation/diff-format.txt index 811d143..424e75a 100644 --- a/Documentation/diff-format.txt +++ b/Documentation/diff-format.txt @@ -1,13 +1,13 @@ -The output format from "git-diff-cache", "git-diff-tree" and +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: -git-diff-cache :: +git-diff-index :: compares the and the files on the filesystem. -git-diff-cache --cached :: +git-diff-index --cached :: compares the and the cache. git-diff-tree [-r] [...]:: @@ -58,7 +58,7 @@ Example: Generating patches with -p -------------------------- -When "git-diff-cache", "git-diff-tree", or "git-diff-files" are run +When "git-diff-index", "git-diff-tree", or "git-diff-files" are run with a '-p' option, they do not produce the output described above; instead they produce a patch file. @@ -77,7 +77,7 @@ The "diff" formatting options can be customized via the environment variable 'GIT_DIFF_OPTS'. For example, if you prefer context diff: - GIT_DIFF_OPTS=-c git-diff-cache -p $(cat .git/HEAD) + GIT_DIFF_OPTS=-c git-diff-index -p $(cat .git/HEAD) 2. When the environment variable 'GIT_EXTERNAL_DIFF' is set, the diff --git a/Documentation/diffcore.txt b/Documentation/diffcore.txt index 1a6e725..a0ffe85 100644 --- a/Documentation/diffcore.txt +++ b/Documentation/diffcore.txt @@ -6,7 +6,7 @@ June 2005 Introduction ------------ -The diff commands git-diff-cache, git-diff-files, and +The diff commands git-diff-index, git-diff-files, and git-diff-tree can be told to manipulate differences they find in unconventional ways before showing diff(1) output. The manipulation is collectively called "diffcore transformation". @@ -21,7 +21,7 @@ The chain of operation The git-diff-* family works by first comparing two sets of files: - - git-diff-cache compares contents of a "tree" object and the + - git-diff-index compares contents of a "tree" object and the working directory (when '--cached' flag is not used) or a "tree" object and the index file (when '--cached' flag is used); diff --git a/Documentation/git-add-script.txt b/Documentation/git-add-script.txt deleted file mode 100644 index 3001143..0000000 --- a/Documentation/git-add-script.txt +++ /dev/null @@ -1,33 +0,0 @@ -git-add-script(1) -================= - -NAME ----- -git-add-script - Add files to the cache. - -SYNOPSIS --------- -'git-add-script' ... - -DESCRIPTION ------------ -A simple wrapper to git-update-cache to add files to the cache for people used -to do "cvs add". - -OPTIONS -------- -...:: - Files to add to the cache. - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt new file mode 100644 index 0000000..beb4500 --- /dev/null +++ b/Documentation/git-add.txt @@ -0,0 +1,33 @@ +git-add(1) +========== + +NAME +---- +git-add - Add files to the cache. + +SYNOPSIS +-------- +'git-add' ... + +DESCRIPTION +----------- +A simple wrapper to git-update-index to add files to the cache for people used +to do "cvs add". + +OPTIONS +------- +...:: + Files to add to the cache. + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-archimport-script.txt b/Documentation/git-archimport-script.txt deleted file mode 100644 index 134fbed..0000000 --- a/Documentation/git-archimport-script.txt +++ /dev/null @@ -1,42 +0,0 @@ -git-archimport-script(1) -======================== - -NAME ----- -git-archimport-script - Import an arch repository into git - - -SYNOPSIS --------- -`git-archimport-script` [--option...] - -DESCRIPTION ------------ -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 -then follow all the branching and tagging within the provided roots. - -It will die if it sees branches that have different roots. - - -OPTIONS -------- ---option:: - Some option not yet documented. - -...:: - Some argument not yet documented. - - -Author ------- -Written by Martin Langhoff . - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-archimport.txt b/Documentation/git-archimport.txt new file mode 100644 index 0000000..8ce5f0a --- /dev/null +++ b/Documentation/git-archimport.txt @@ -0,0 +1,42 @@ +git-archimport(1) +================= + +NAME +---- +git-archimport - Import an arch repository into git + + +SYNOPSIS +-------- +`git-archimport` [--option...] + +DESCRIPTION +----------- +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 +then follow all the branching and tagging within the provided roots. + +It will die if it sees branches that have different roots. + + +OPTIONS +------- +--option:: + Some option not yet documented. + +...:: + Some argument not yet documented. + + +Author +------ +Written by Martin Langhoff . + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-bisect-script.txt b/Documentation/git-bisect-script.txt deleted file mode 100644 index b4531c6..0000000 --- a/Documentation/git-bisect-script.txt +++ /dev/null @@ -1,90 +0,0 @@ -git-bisect-script(1) -==================== - -NAME ----- -git-bisect-script - Find the change that introduced a bug - - -SYNOPSIS --------- -'git bisect' start -'git bisect' bad -'git bisect' good -'git bisect' reset [] -'git bisect' visualize - - -DESCRIPTION ------------ -This command uses 'git-rev-list --bisect' option to help drive -the binary search process to find which change introduced a bug, -given an old "good" commit object name and a later "bad" commit -object name. - -The way you use it is: - ------------------------------------------------- -git bisect start -git bisect bad # Current version is bad -git bisect good v2.6.13-rc2 # v2.6.13-rc2 was the last version - # tested that was good ------------------------------------------------- - -When you give at least one bad and one good versions, it will -bisect the revision tree and say something like: - ------------------------------------------------- -Bisecting: 675 revisions left to test after this ------------------------------------------------- - -and check out the state in the middle. Now, compile that kernel, and boot -it. Now, let's say that this booted kernel works fine, then just do - ------------------------------------------------- -git bisect good # this one is good ------------------------------------------------- - -which will now say - ------------------------------------------------- -Bisecting: 337 revisions left to test after this ------------------------------------------------- - -and you continue along, compiling that one, testing it, and depending on -whether it is good or bad, you say "git bisect good" or "git bisect bad", -and ask for the next bisection. - -Until you have no more left, and you'll have been left with the first bad -kernel rev in "refs/bisect/bad". - -Oh, and then after you want to reset to the original head, do a - ------------------------------------------------- -git bisect reset ------------------------------------------------- - -to get back to the master branch, instead of being in one of the bisection -branches ("git bisect start" will do that for you too, actually: it will -reset the bisection state, and before it does that it checks that you're -not using some old bisection branch). - -During the bisection process, you can say - - git bisect visualize - -to see the currently remaining suspects in `gitk`. - - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt new file mode 100644 index 0000000..ae43876 --- /dev/null +++ b/Documentation/git-bisect.txt @@ -0,0 +1,90 @@ +git-bisect(1) +============= + +NAME +---- +git-bisect - Find the change that introduced a bug + + +SYNOPSIS +-------- +'git bisect' start +'git bisect' bad +'git bisect' good +'git bisect' reset [] +'git bisect' visualize + + +DESCRIPTION +----------- +This command uses 'git-rev-list --bisect' option to help drive +the binary search process to find which change introduced a bug, +given an old "good" commit object name and a later "bad" commit +object name. + +The way you use it is: + +------------------------------------------------ +git bisect start +git bisect bad # Current version is bad +git bisect good v2.6.13-rc2 # v2.6.13-rc2 was the last version + # tested that was good +------------------------------------------------ + +When you give at least one bad and one good versions, it will +bisect the revision tree and say something like: + +------------------------------------------------ +Bisecting: 675 revisions left to test after this +------------------------------------------------ + +and check out the state in the middle. Now, compile that kernel, and boot +it. Now, let's say that this booted kernel works fine, then just do + +------------------------------------------------ +git bisect good # this one is good +------------------------------------------------ + +which will now say + +------------------------------------------------ +Bisecting: 337 revisions left to test after this +------------------------------------------------ + +and you continue along, compiling that one, testing it, and depending on +whether it is good or bad, you say "git bisect good" or "git bisect bad", +and ask for the next bisection. + +Until you have no more left, and you'll have been left with the first bad +kernel rev in "refs/bisect/bad". + +Oh, and then after you want to reset to the original head, do a + +------------------------------------------------ +git bisect reset +------------------------------------------------ + +to get back to the master branch, instead of being in one of the bisection +branches ("git bisect start" will do that for you too, actually: it will +reset the bisection state, and before it does that it checks that you're +not using some old bisection branch). + +During the bisection process, you can say + + git bisect visualize + +to see the currently remaining suspects in `gitk`. + + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-branch-script.txt b/Documentation/git-branch-script.txt deleted file mode 100644 index 3ace8ad..0000000 --- a/Documentation/git-branch-script.txt +++ /dev/null @@ -1,39 +0,0 @@ -git-branch-script(1) -==================== - -NAME ----- -git-branch-script - Create a new branch. - -SYNOPSIS --------- -'git-branch-script' [ [start-point]] - -DESCRIPTION ------------ -If no argument is provided, show available branches and mark current -branch with star. Otherwise, create a new branch of name . - -If a starting point is also specified, that will be where the branch is -created, otherwise it will be created at the current HEAD. - -OPTIONS -------- -:: - The name of the branch to create. - -start-point:: - Where to make the branch; defaults to HEAD. - -Author ------- -Written by Linus Torvalds and Junio C Hamano - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt new file mode 100644 index 0000000..914c0e6 --- /dev/null +++ b/Documentation/git-branch.txt @@ -0,0 +1,39 @@ +git-branch(1) +============= + +NAME +---- +git-branch - Create a new branch. + +SYNOPSIS +-------- +'git-branch' [ [start-point]] + +DESCRIPTION +----------- +If no argument is provided, show available branches and mark current +branch with star. Otherwise, create a new branch of name . + +If a starting point is also specified, that will be where the branch is +created, otherwise it will be created at the current HEAD. + +OPTIONS +------- +:: + The name of the branch to create. + +start-point:: + Where to make the branch; defaults to HEAD. + +Author +------ +Written by Linus Torvalds and Junio C Hamano + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-checkout-cache.txt b/Documentation/git-checkout-cache.txt deleted file mode 100644 index 321a00c..0000000 --- a/Documentation/git-checkout-cache.txt +++ /dev/null @@ -1,106 +0,0 @@ -git-checkout-cache(1) -===================== -v0.1, May 2005 - -NAME ----- -git-checkout-cache - Copy files from the cache to the working directory - - -SYNOPSIS --------- -'git-checkout-cache' [-u] [-q] [-a] [-f] [-n] [--prefix=] - [--] ... - -DESCRIPTION ------------ -Will copy all files listed from the cache to the working directory -(not overwriting existing files). - -OPTIONS -------- --u:: - update stat information for the checked out entries in - the cache file. - --q:: - be quiet if files exist or are not in the cache - --f:: - forces overwrite of existing files - --a:: - checks out all files in the cache (will then continue to - process listed files). - --n:: - Don't checkout new files, only refresh files already checked - out. - ---prefix=:: - When creating files, prepend (usually a directory - including a trailing /) - ---:: - Do not interpret any more arguments as options. - -Note that the order of the flags matters: - - git-checkout-cache -a -f file.c - -will first check out all files listed in the cache (but not overwrite -any old ones), and then force-checkout `file.c` a second time (ie that -one *will* overwrite any old contents with the same filename). - -Also, just doing "git-checkout-cache" does nothing. You probably meant -"git-checkout-cache -a". And if you want to force it, you want -"git-checkout-cache -f -a". - -Intuitiveness is not the goal here. Repeatability is. The reason for -the "no arguments means no work" thing is that from scripts you are -supposed to be able to do things like: - - find . -name '*.h' -print0 | xargs -0 git-checkout-cache -f -- - -which will force all existing `*.h` files to be replaced with their -cached copies. If an empty command line implied "all", then this would -force-refresh everything in the cache, which was not the point. - -To update and refresh only the files already checked out: - - git-checkout-cache -n -f -a && git-update-cache --ignore-missing --refresh - -Oh, and the "--" is just a good idea when you know the rest will be -filenames. Just so that you wouldn't have a filename of "-a" causing -problems (not possible in the above example, but get used to it in -scripting!). - -The prefix ability basically makes it trivial to use -git-checkout-cache as an "export as tree" function. Just read the -desired tree into the index, and do a - - git-checkout-cache --prefix=git-export-dir/ -a - -and git-checkout-cache will "export" the cache into the specified -directory. - -NOTE The final "/" is important. The exported name is literally just -prefixed with the specified string, so you can also do something like - - git-checkout-cache --prefix=.merged- Makefile - -to check out the currently cached copy of `Makefile` into the file -`.merged-Makefile` - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-checkout-index.txt b/Documentation/git-checkout-index.txt new file mode 100644 index 0000000..bb15214 --- /dev/null +++ b/Documentation/git-checkout-index.txt @@ -0,0 +1,106 @@ +git-checkout-index(1) +===================== +v0.1, May 2005 + +NAME +---- +git-checkout-index - Copy files from the cache to the working directory + + +SYNOPSIS +-------- +'git-checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=] + [--] ... + +DESCRIPTION +----------- +Will copy all files listed from the cache to the working directory +(not overwriting existing files). + +OPTIONS +------- +-u:: + update stat information for the checked out entries in + the cache file. + +-q:: + be quiet if files exist or are not in the cache + +-f:: + forces overwrite of existing files + +-a:: + checks out all files in the cache (will then continue to + process listed files). + +-n:: + Don't checkout new files, only refresh files already checked + out. + +--prefix=:: + When creating files, prepend (usually a directory + including a trailing /) + +--:: + Do not interpret any more arguments as options. + +Note that the order of the flags matters: + + git-checkout-index -a -f file.c + +will first check out all files listed in the cache (but not overwrite +any old ones), and then force-checkout `file.c` a second time (ie that +one *will* overwrite any old contents with the same filename). + +Also, just doing "git-checkout-index" does nothing. You probably meant +"git-checkout-index -a". And if you want to force it, you want +"git-checkout-index -f -a". + +Intuitiveness is not the goal here. Repeatability is. The reason for +the "no arguments means no work" thing is that from scripts you are +supposed to be able to do things like: + + find . -name '*.h' -print0 | xargs -0 git-checkout-index -f -- + +which will force all existing `*.h` files to be replaced with their +cached copies. If an empty command line implied "all", then this would +force-refresh everything in the cache, which was not the point. + +To update and refresh only the files already checked out: + + git-checkout-index -n -f -a && git-update-index --ignore-missing --refresh + +Oh, and the "--" is just a good idea when you know the rest will be +filenames. Just so that you wouldn't have a filename of "-a" causing +problems (not possible in the above example, but get used to it in +scripting!). + +The prefix ability basically makes it trivial to use +git-checkout-index as an "export as tree" function. Just read the +desired tree into the index, and do a + + git-checkout-index --prefix=git-export-dir/ -a + +and git-checkout-index will "export" the cache into the specified +directory. + +NOTE The final "/" is important. The exported name is literally just +prefixed with the specified string, so you can also do something like + + git-checkout-index --prefix=.merged- Makefile + +to check out the currently cached copy of `Makefile` into the file +`.merged-Makefile` + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-checkout-script.txt b/Documentation/git-checkout-script.txt deleted file mode 100644 index 52831ab..0000000 --- a/Documentation/git-checkout-script.txt +++ /dev/null @@ -1,43 +0,0 @@ -git-checkout-script(1) -====================== - -NAME ----- -git-checkout-script - Checkout and switch to a branch. - -SYNOPSIS --------- -'git-checkout-script' [-f] [-b ] [] - -DESCRIPTION ------------ -Updates the index and working tree to reflect the specified branch, -. Updates HEAD to be or, if specified, . - -OPTIONS -------- --f:: - Force an re-read of everything. - --b:: - Create a new branch and start it at . - -:: - Name for the new branch. - -:: - Branch to checkout; may be any object ID that resolves to a - commit. Defaults to HEAD. - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt new file mode 100644 index 0000000..3bc7743 --- /dev/null +++ b/Documentation/git-checkout.txt @@ -0,0 +1,43 @@ +git-checkout(1) +=============== + +NAME +---- +git-checkout - Checkout and switch to a branch. + +SYNOPSIS +-------- +'git-checkout' [-f] [-b ] [] + +DESCRIPTION +----------- +Updates the index and working tree to reflect the specified branch, +. Updates HEAD to be or, if specified, . + +OPTIONS +------- +-f:: + Force an re-read of everything. + +-b:: + Create a new branch and start it at . + +:: + Name for the new branch. + +:: + Branch to checkout; may be any object ID that resolves to a + commit. Defaults to HEAD. + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-cherry-pick-script.txt b/Documentation/git-cherry-pick-script.txt deleted file mode 100644 index ab9fb22..0000000 --- a/Documentation/git-cherry-pick-script.txt +++ /dev/null @@ -1,57 +0,0 @@ -git-cherry-pick-script(1) -========================= -v0.99.5 Aug 2005 - -NAME ----- -git-cherry-pick-script - Apply the change introduced by an existing commit. - -SYNOPSIS --------- -'git-cherry-pick-script' [-n] [-r] - -DESCRIPTION ------------ -Given one existing commit, apply the change the patch introduces, and record a -new commit that records it. This requires your working tree to be clean (no -modifications from the HEAD commit). - -OPTIONS -------- -:: - Commit to cherry-pick. - --r:: - Usuall 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 - when you are reordering the patches in your private tree - before publishing, and is used by 'git rebase'. - --n:: - Usually the command automatically creates a commit with - a commit log message stating which commit was - cherry-picked. This flag applies the change necessary - to cherry-pick the named commit to your working tree, - but does not make the commit. In addition, when this - option is used, your working tree does not have to match - the HEAD commit. The cherry-pick is done against the - beginning state of your working tree. - - This is useful when cherry-picking more than one commits' - effect to your working tree in a row. - - -Author ------- -Written by Junio C Hamano - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-cherry-pick.txt b/Documentation/git-cherry-pick.txt new file mode 100644 index 0000000..38a4875 --- /dev/null +++ b/Documentation/git-cherry-pick.txt @@ -0,0 +1,57 @@ +git-cherry-pick(1) +================== +v0.99.5 Aug 2005 + +NAME +---- +git-cherry-pick - Apply the change introduced by an existing commit. + +SYNOPSIS +-------- +'git-cherry-pick' [-n] [-r] + +DESCRIPTION +----------- +Given one existing commit, apply the change the patch introduces, and record a +new commit that records it. This requires your working tree to be clean (no +modifications from the HEAD commit). + +OPTIONS +------- +:: + Commit to cherry-pick. + +-r:: + Usuall 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 + when you are reordering the patches in your private tree + before publishing, and is used by 'git rebase'. + +-n:: + Usually the command automatically creates a commit with + a commit log message stating which commit was + cherry-picked. This flag applies the change necessary + to cherry-pick the named commit to your working tree, + but does not make the commit. In addition, when this + option is used, your working tree does not have to match + the HEAD commit. The cherry-pick is done against the + beginning state of your working tree. + + This is useful when cherry-picking more than one commits' + effect to your working tree in a row. + + +Author +------ +Written by Junio C Hamano + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-clone-script.txt b/Documentation/git-clone-script.txt deleted file mode 100644 index afb25bd..0000000 --- a/Documentation/git-clone-script.txt +++ /dev/null @@ -1,60 +0,0 @@ -git-clone-script(1) -=================== -v0.1, July 2005 - -NAME ----- -git-clone-script - Clones a repository. - - -SYNOPSIS --------- -'git clone' [-l] [-u ] [-q] - -DESCRIPTION ------------ -Clones a repository into a newly created directory. - -OPTIONS -------- --l:: - When the repository to clone from is on a local machine, - this flag bypasses normal "git aware" transport - mechanism and clones the repository by making a copy of - HEAD and everything under objects and refs directories. - The files under .git/objects/ directory are hardlinked - to save space when possible. - --q:: - Operate quietly. This flag is passed to "rsync" and - "git-clone-pack" commands when given. - --u :: - When given, and the repository to clone from is handled - by 'git-clone-pack', '--exec=' is passed to - the command to specify non-default path for the command - run on the other end. - -:: - The (possibly remote) repository to clone from. It can - be an "rsync://host/dir" URL, an "http://host/dir" URL, - or [:]/dir notation that is used by 'git-clone-pack'. - Currently http transport is not supported. - -:: - The name of a new directory to be cloned into. It is an - error to specify an existing directory. - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by Junio C Hamano. - - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt new file mode 100644 index 0000000..cff87ea --- /dev/null +++ b/Documentation/git-clone.txt @@ -0,0 +1,60 @@ +git-clone(1) +============ +v0.1, July 2005 + +NAME +---- +git-clone - Clones a repository. + + +SYNOPSIS +-------- +'git clone' [-l] [-u ] [-q] + +DESCRIPTION +----------- +Clones a repository into a newly created directory. + +OPTIONS +------- +-l:: + When the repository to clone from is on a local machine, + this flag bypasses normal "git aware" transport + mechanism and clones the repository by making a copy of + HEAD and everything under objects and refs directories. + The files under .git/objects/ directory are hardlinked + to save space when possible. + +-q:: + Operate quietly. This flag is passed to "rsync" and + "git-clone-pack" commands when given. + +-u :: + When given, and the repository to clone from is handled + by 'git-clone-pack', '--exec=' is passed to + the command to specify non-default path for the command + run on the other end. + +:: + The (possibly remote) repository to clone from. It can + be an "rsync://host/dir" URL, an "http://host/dir" URL, + or [:]/dir notation that is used by 'git-clone-pack'. + Currently http transport is not supported. + +:: + The name of a new directory to be cloned into. It is an + error to specify an existing directory. + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by Junio C Hamano. + + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-commit-script.txt b/Documentation/git-commit-script.txt deleted file mode 100644 index faa1870..0000000 --- a/Documentation/git-commit-script.txt +++ /dev/null @@ -1,72 +0,0 @@ -git-commit-script(1) -==================== -v0.99.4, Aug 2005 - -NAME ----- -git-commit-script - Record your changes - -SYNOPSIS --------- -'git commit' [-a] [-s] [-v] [(-c | -C) | -F | -m ] [-e] ... - -DESCRIPTION ------------ -Updates the index file for given paths, or all modified files if -'-a' is specified, and makes a commit object. The command -VISUAL and EDITOR environment variables to edit the commit log -message. - -This command can run `commit-msg`, `pre-commit`, and -`post-commit` hooks. See link:hooks.html[hooks] for more -information. - -OPTIONS -------- --a:: - Update all paths in the index file. - --c or -C :: - Take existing commit object, and reuse the log message - and the authorship information (including the timestamp) - when creating the commit. With '-C', the editor is not - invoked; with '-c' the user can further edit the commit - message. - --F :: - Take the commit message from the given file. Use '-' to - read the message from the standard input. - --m :: - Use the given as the commit message. - --s:: - Add Signed-off-by line at the end of the commit message. - --v:: - Look for suspicious lines the commit introduces, and - abort committing if there is one. The definition of - 'suspicious lines' is currently the lines that has - trailing whitespaces, and the lines whose indentation - has a SP character immediately followed by a TAB - character. - --e:: - The message taken from file with `-F`, command line with - `-m`, and from file with `-C` are usually used as the - commit log message unmodified. This option lets you - further edit the message taken from these sources. - -...:: - Update specified paths in the index file before committing. - - -Author ------- -Written by Linus Torvalds and -Junio C Hamano - - -GIT ---- -Part of the link:git.html[git] suite diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt new file mode 100644 index 0000000..afcf6ef --- /dev/null +++ b/Documentation/git-commit.txt @@ -0,0 +1,72 @@ +git-commit(1) +============= +v0.99.4, Aug 2005 + +NAME +---- +git-commit - Record your changes + +SYNOPSIS +-------- +'git commit' [-a] [-s] [-v] [(-c | -C) | -F | -m ] [-e] ... + +DESCRIPTION +----------- +Updates the index file for given paths, or all modified files if +'-a' is specified, and makes a commit object. The command +VISUAL and EDITOR environment variables to edit the commit log +message. + +This command can run `commit-msg`, `pre-commit`, and +`post-commit` hooks. See link:hooks.html[hooks] for more +information. + +OPTIONS +------- +-a:: + Update all paths in the index file. + +-c or -C :: + Take existing commit object, and reuse the log message + and the authorship information (including the timestamp) + when creating the commit. With '-C', the editor is not + invoked; with '-c' the user can further edit the commit + message. + +-F :: + Take the commit message from the given file. Use '-' to + read the message from the standard input. + +-m :: + Use the given as the commit message. + +-s:: + Add Signed-off-by line at the end of the commit message. + +-v:: + Look for suspicious lines the commit introduces, and + abort committing if there is one. The definition of + 'suspicious lines' is currently the lines that has + trailing whitespaces, and the lines whose indentation + has a SP character immediately followed by a TAB + character. + +-e:: + The message taken from file with `-F`, command line with + `-m`, and from file with `-C` are usually used as the + commit log message unmodified. This option lets you + further edit the message taken from these sources. + +...:: + Update specified paths in the index file before committing. + + +Author +------ +Written by Linus Torvalds and +Junio C Hamano + + +GIT +--- +Part of the link:git.html[git] suite diff --git a/Documentation/git-convert-cache.txt b/Documentation/git-convert-cache.txt deleted file mode 100644 index 66d7fe7..0000000 --- a/Documentation/git-convert-cache.txt +++ /dev/null @@ -1,30 +0,0 @@ -git-convert-cache(1) -==================== -v0.1, May 2005 - -NAME ----- -git-convert-cache - Converts old-style GIT repository - - -SYNOPSIS --------- -'git-convert-cache' - -DESCRIPTION ------------ -Converts old-style GIT repository to the latest format - - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-convert-objects.txt b/Documentation/git-convert-objects.txt new file mode 100644 index 0000000..b1bc1c5 --- /dev/null +++ b/Documentation/git-convert-objects.txt @@ -0,0 +1,30 @@ +git-convert-objects(1) +====================== +v0.1, May 2005 + +NAME +---- +git-convert-objects - Converts old-style GIT repository + + +SYNOPSIS +-------- +'git-convert-objects' + +DESCRIPTION +----------- +Converts old-style GIT repository to the latest format + + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-count-objects-script.txt b/Documentation/git-count-objects-script.txt deleted file mode 100644 index 8a3cedf..0000000 --- a/Documentation/git-count-objects-script.txt +++ /dev/null @@ -1,28 +0,0 @@ -git-count-objects-script(1) -=========================== - -NAME ----- -git-count-objects-script - Reports on unpacked objects. - -SYNOPSIS --------- -'git-count-objects-script' - -DESCRIPTION ------------ -This counts the number of unpacked object files and disk space consumed by -them, to help you decide when it is a good time to repack. - -Author ------- -Written by Junio C Hamano - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-count-objects.txt b/Documentation/git-count-objects.txt new file mode 100644 index 0000000..824852c --- /dev/null +++ b/Documentation/git-count-objects.txt @@ -0,0 +1,28 @@ +git-count-objects(1) +==================== + +NAME +---- +git-count-objects - Reports on unpacked objects. + +SYNOPSIS +-------- +'git-count-objects' + +DESCRIPTION +----------- +This counts the number of unpacked object files and disk space consumed by +them, to help you decide when it is a good time to repack. + +Author +------ +Written by Junio C Hamano + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-cvsimport-script.txt b/Documentation/git-cvsimport-script.txt deleted file mode 100644 index 9d8acfc..0000000 --- a/Documentation/git-cvsimport-script.txt +++ /dev/null @@ -1,109 +0,0 @@ -git-cvsimport-script(1) -======================= -v0.1, July 2005 - -NAME ----- -git-cvsimport-script - Import a CVS repository into git - - -SYNOPSIS --------- -'git-cvsimport-script' [ -o ] [ -h ] [ -v ] - [ -d ] [ -p ] - [ -C ] [ -i ] [ -k ] - [ -s ] [ -m ] [ -M regex ] [ ] - - -DESCRIPTION ------------ -Imports a CVS repository into git. It will either create a new -repository, or incrementally import into an existing one. - -Splitting the CVS log into patch sets is done by 'cvsps'. -At least version 2.1 is required. - -OPTIONS -------- --d :: - The root of the CVS archive. May be local (a simple path) or remote; - currently, only the :local:, :ext: and :pserver: access methods - are supported. - --C :: - The GIT repository to import to. If the directory doesn't - exist, it will be created. Default is the current directory. - --i:: - Import-only: don't perform a checkout after importing. This option - ensures the working directory and cache remain untouched and will - not create them if they do not exist. - --k:: - Kill keywords: will extract files with -kk from the CVS archive - to avoid noisy changesets. Highly recommended, but off by default - to preserve compatibility with early imported trees. - --u:: - Convert underscores in tag and branch names to dots. - --o :: - The 'HEAD' branch from CVS is imported to the 'origin' branch within - the git repository, as 'HEAD' already has a special meaning for git. - Use this option if you want to import into a different branch. - - Use '-o master' for continuing an import that was initially done by - the old cvs2git tool. - --p :: - Additional options for cvsps. - The options '-u' and '-A' are implicit and should not be used here. - - If you need to pass multiple options, separate them with a comma. - --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. - --M :: - 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. - --v:: - Verbosity: let 'cvsimport' report what it is doing. - -:: - The CVS module you want to import. Relative to . - --h:: - Print a short usage message and exit. - --z :: - Pass the timestamp fuzz factor to cvsps. - --s :: - Substitute the character "/" in branch names with - -OUTPUT ------- -If '-v' is specified, the script reports what it is doing. - -Otherwise, success is indicated the Unix way, i.e. by simply exiting with -a zero exit status. - - -Author ------- -Written by Matthias Urlichs , with help from -various participants of the git-list . - -Documentation --------------- -Documentation by Matthias Urlichs . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-cvsimport.txt b/Documentation/git-cvsimport.txt new file mode 100644 index 0000000..edf9521 --- /dev/null +++ b/Documentation/git-cvsimport.txt @@ -0,0 +1,109 @@ +git-cvsimport(1) +================ +v0.1, July 2005 + +NAME +---- +git-cvsimport - Import a CVS repository into git + + +SYNOPSIS +-------- +'git-cvsimport' [ -o ] [ -h ] [ -v ] + [ -d ] [ -p ] + [ -C ] [ -i ] [ -k ] + [ -s ] [ -m ] [ -M regex ] [ ] + + +DESCRIPTION +----------- +Imports a CVS repository into git. It will either create a new +repository, or incrementally import into an existing one. + +Splitting the CVS log into patch sets is done by 'cvsps'. +At least version 2.1 is required. + +OPTIONS +------- +-d :: + The root of the CVS archive. May be local (a simple path) or remote; + currently, only the :local:, :ext: and :pserver: access methods + are supported. + +-C :: + The GIT repository to import to. If the directory doesn't + exist, it will be created. Default is the current directory. + +-i:: + Import-only: don't perform a checkout after importing. This option + ensures the working directory and cache remain untouched and will + not create them if they do not exist. + +-k:: + Kill keywords: will extract files with -kk from the CVS archive + to avoid noisy changesets. Highly recommended, but off by default + to preserve compatibility with early imported trees. + +-u:: + Convert underscores in tag and branch names to dots. + +-o :: + The 'HEAD' branch from CVS is imported to the 'origin' branch within + the git repository, as 'HEAD' already has a special meaning for git. + Use this option if you want to import into a different branch. + + Use '-o master' for continuing an import that was initially done by + the old cvs2git tool. + +-p :: + Additional options for cvsps. + The options '-u' and '-A' are implicit and should not be used here. + + If you need to pass multiple options, separate them with a comma. + +-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. + +-M :: + 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. + +-v:: + Verbosity: let 'cvsimport' report what it is doing. + +:: + The CVS module you want to import. Relative to . + +-h:: + Print a short usage message and exit. + +-z :: + Pass the timestamp fuzz factor to cvsps. + +-s :: + Substitute the character "/" in branch names with + +OUTPUT +------ +If '-v' is specified, the script reports what it is doing. + +Otherwise, success is indicated the Unix way, i.e. by simply exiting with +a zero exit status. + + +Author +------ +Written by Matthias Urlichs , with help from +various participants of the git-list . + +Documentation +-------------- +Documentation by Matthias Urlichs . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-diff-cache.txt b/Documentation/git-diff-cache.txt deleted file mode 100644 index a353d12..0000000 --- a/Documentation/git-diff-cache.txt +++ /dev/null @@ -1,134 +0,0 @@ -git-diff-cache(1) -================= -v0.1, May 2005 - -NAME ----- -git-diff-cache - Compares content and mode of blobs between the cache and repository - - -SYNOPSIS --------- -'git-diff-cache' [-m] [--cached] [] [...] - -DESCRIPTION ------------ -Compares the content and mode of the blobs found via a tree -object with the content of the current cache and, optionally -ignoring the stat state of the file on disk. When paths are -specified, compares only those named paths. Otherwise all -entries in the cache are compared. - -OPTIONS -------- -include::diff-options.txt[] - -:: - The id of a tree object to diff against. - ---cached:: - do not consider the on-disk file at all - --m:: - By default, files recorded in the index but not checked - out are reported as deleted. This flag makes - "git-diff-cache" say that all non-checked-out files are up - to date. - -Output format -------------- -include::diff-format.txt[] - -Operating Modes ---------------- -You can choose whether you want to trust the index file entirely -(using the '--cached' flag) or ask the diff logic to show any files -that don't match the stat state as being "tentatively changed". Both -of these operations are very useful indeed. - -Cached Mode ------------ -If '--cached' is specified, it allows you to ask: - - show me the differences between HEAD and the current cache - contents (the ones I'd write with a "git-write-tree") - -For example, let's say that you have worked on your working directory, updated -some files in the cache and are ready to commit. You want to see eactly -*what* you are going to commit is without having to write a new tree -object and compare it that way, and to do that, you just do - - git-diff-cache --cached $(cat .git/HEAD) - -Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had -done an "git-update-cache" to make that effective in the index file. -"git-diff-files" wouldn't show anything at all, since the index file -matches my working directory. But doing a "git-diff-cache" does: - - torvalds@ppc970:~/git> git-diff-cache --cached $(cat .git/HEAD) - -100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 commit.c - +100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 git-commit.c - -You can trivially see that the above is a rename. - -In fact, "git-diff-cache --cached" *should* always be entirely equivalent to -actually doing a "git-write-tree" and comparing that. Except this one is much -nicer for the case where you just want to check where you are. - -So doing a "git-diff-cache --cached" is basically very useful when you are -asking yourself "what have I already marked for being committed, and -what's the difference to a previous tree". - -Non-cached Mode ---------------- -The "non-cached" mode takes a different approach, and is potentially -the more useful of the two in that what it does can't be emulated with -a "git-write-tree" + "git-diff-tree". Thus that's the default mode. -The non-cached version asks the question: - - show me the differences between HEAD and the currently checked out - tree - index contents _and_ files that aren't up-to-date - -which is obviously a very useful question too, since that tells you what -you *could* commit. Again, the output matches the "git-diff-tree -r" -output to a tee, but with a twist. - -The twist is that if some file doesn't match the cache, we don't have -a backing store thing for it, and we use the magic "all-zero" sha1 to -show that. So let's say that you have edited `kernel/sched.c`, but -have not actually done a "git-update-cache" on it yet - there is no -"object" associated with the new state, and you get: - - torvalds@ppc970:~/v2.6/linux> git-diff-cache $(cat .git/HEAD ) - *100644->100664 blob 7476bb......->000000...... kernel/sched.c - -ie it shows that the tree has changed, and that `kernel/sched.c` has is -not up-to-date and may contain new stuff. The all-zero sha1 means that to -get the real diff, you need to look at the object in the working directory -directly rather than do an object-to-object diff. - -NOTE! As with other commands of this type, "git-diff-cache" does not -actually look at the contents of the file at all. So maybe -`kernel/sched.c` hasn't actually changed, and it's just that you -touched it. In either case, it's a note that you need to -"git-upate-cache" it to make the cache be in sync. - -NOTE 2! You can have a mixture of files show up as "has been updated" -and "is still dirty in the working directory" together. You can always -tell which file is in which state, since the "has been updated" ones -show a valid sha1, and the "not in sync with the index" ones will -always have the special all-zero sha1. - - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-diff-files.txt b/Documentation/git-diff-files.txt index 3e1244f..72c7a71 100644 --- a/Documentation/git-diff-files.txt +++ b/Documentation/git-diff-files.txt @@ -16,7 +16,7 @@ DESCRIPTION Compares the files in the working tree and the cache. When paths are specified, compares only those named paths. Otherwise all entries in the cache are compared. The output format is the -same as "git-diff-cache" and "git-diff-tree". +same as "git-diff-index" and "git-diff-tree". OPTIONS ------- diff --git a/Documentation/git-diff-helper.txt b/Documentation/git-diff-helper.txt index d826deb..26f5f39 100644 --- a/Documentation/git-diff-helper.txt +++ b/Documentation/git-diff-helper.txt @@ -13,7 +13,7 @@ SYNOPSIS DESCRIPTION ----------- -Reads output from "git-diff-cache", "git-diff-tree" and "git-diff-files" and +Reads output from "git-diff-index", "git-diff-tree" and "git-diff-files" and generates patch format output. OPTIONS @@ -35,7 +35,7 @@ OPTIONS See Also -------- -The section on generating patches in link:git-diff-cache.html[git-diff-cache] +The section on generating patches in link:git-diff-index.html[git-diff-index] Author diff --git a/Documentation/git-diff-index.txt b/Documentation/git-diff-index.txt new file mode 100644 index 0000000..12bfcb3 --- /dev/null +++ b/Documentation/git-diff-index.txt @@ -0,0 +1,134 @@ +git-diff-index(1) +================= +v0.1, May 2005 + +NAME +---- +git-diff-index - Compares content and mode of blobs between the cache and repository + + +SYNOPSIS +-------- +'git-diff-index' [-m] [--cached] [] [...] + +DESCRIPTION +----------- +Compares the content and mode of the blobs found via a tree +object with the content of the current cache and, optionally +ignoring the stat state of the file on disk. When paths are +specified, compares only those named paths. Otherwise all +entries in the cache are compared. + +OPTIONS +------- +include::diff-options.txt[] + +:: + The id of a tree object to diff against. + +--cached:: + do not consider the on-disk file at all + +-m:: + By default, files recorded in the index but not checked + out are reported as deleted. This flag makes + "git-diff-index" say that all non-checked-out files are up + to date. + +Output format +------------- +include::diff-format.txt[] + +Operating Modes +--------------- +You can choose whether you want to trust the index file entirely +(using the '--cached' flag) or ask the diff logic to show any files +that don't match the stat state as being "tentatively changed". Both +of these operations are very useful indeed. + +Cached Mode +----------- +If '--cached' is specified, it allows you to ask: + + show me the differences between HEAD and the current cache + contents (the ones I'd write with a "git-write-tree") + +For example, let's say that you have worked on your working directory, updated +some files in the cache and are ready to commit. You want to see eactly +*what* you are going to commit is without having to write a new tree +object and compare it that way, and to do that, you just do + + git-diff-index --cached $(cat .git/HEAD) + +Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had +done an "git-update-index" to make that effective in the index file. +"git-diff-files" wouldn't show anything at all, since the index file +matches my working directory. But doing a "git-diff-index" does: + + torvalds@ppc970:~/git> git-diff-index --cached $(cat .git/HEAD) + -100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 commit.c + +100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 git-commit.c + +You can trivially see that the above is a rename. + +In fact, "git-diff-index --cached" *should* always be entirely equivalent to +actually doing a "git-write-tree" and comparing that. Except this one is much +nicer for the case where you just want to check where you are. + +So doing a "git-diff-index --cached" is basically very useful when you are +asking yourself "what have I already marked for being committed, and +what's the difference to a previous tree". + +Non-cached Mode +--------------- +The "non-cached" mode takes a different approach, and is potentially +the more useful of the two in that what it does can't be emulated with +a "git-write-tree" + "git-diff-tree". Thus that's the default mode. +The non-cached version asks the question: + + show me the differences between HEAD and the currently checked out + tree - index contents _and_ files that aren't up-to-date + +which is obviously a very useful question too, since that tells you what +you *could* commit. Again, the output matches the "git-diff-tree -r" +output to a tee, but with a twist. + +The twist is that if some file doesn't match the cache, we don't have +a backing store thing for it, and we use the magic "all-zero" sha1 to +show that. So let's say that you have edited `kernel/sched.c`, but +have not actually done a "git-update-index" on it yet - there is no +"object" associated with the new state, and you get: + + torvalds@ppc970:~/v2.6/linux> git-diff-index $(cat .git/HEAD ) + *100644->100664 blob 7476bb......->000000...... kernel/sched.c + +ie it shows that the tree has changed, and that `kernel/sched.c` has is +not up-to-date and may contain new stuff. The all-zero sha1 means that to +get the real diff, you need to look at the object in the working directory +directly rather than do an object-to-object diff. + +NOTE! As with other commands of this type, "git-diff-index" does not +actually look at the contents of the file at all. So maybe +`kernel/sched.c` hasn't actually changed, and it's just that you +touched it. In either case, it's a note that you need to +"git-upate-cache" it to make the cache be in sync. + +NOTE 2! You can have a mixture of files show up as "has been updated" +and "is still dirty in the working directory" together. You can always +tell which file is in which state, since the "has been updated" ones +show a valid sha1, and the "not in sync with the index" ones will +always have the special all-zero sha1. + + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-diff-script.txt b/Documentation/git-diff-script.txt deleted file mode 100644 index 64acdc0..0000000 --- a/Documentation/git-diff-script.txt +++ /dev/null @@ -1,38 +0,0 @@ -git-diff-script(1) -================== - -NAME ----- -git-diff-script - Some git command not yet documented. - - -SYNOPSIS --------- -'git-diff-script' [ --option ] ... - -DESCRIPTION ------------ -Does something not yet documented. - - -OPTIONS -------- ---option:: - Some option not yet documented. - -...:: - Some argument not yet documented. - - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-diff-tree.txt b/Documentation/git-diff-tree.txt index 5ccf0ba..9ec4b29 100644 --- a/Documentation/git-diff-tree.txt +++ b/Documentation/git-diff-tree.txt @@ -93,7 +93,7 @@ so it can be used to name subdirectories. An example of normal usage is: torvalds@ppc970:~/git> git-diff-tree 5319e4...... - *100664->100664 blob ac348b.......->a01513....... git-fsck-cache.c + *100664->100664 blob ac348b.......->a01513....... git-fsck-objects.c which tells you that the last commit changed just one file (it's from this one: @@ -104,7 +104,7 @@ this one: author Linus Torvalds Sat Apr 9 12:02:30 2005 committer Linus Torvalds Sat Apr 9 12:02:30 2005 - Make "git-fsck-cache" print out all the root commits it finds. + Make "git-fsck-objects" print out all the root commits it finds. Once I do the reference tracking, I'll also make it print out all the HEAD commits it finds, which is even more interesting. diff --git a/Documentation/git-diff.txt b/Documentation/git-diff.txt new file mode 100644 index 0000000..f43a60f --- /dev/null +++ b/Documentation/git-diff.txt @@ -0,0 +1,38 @@ +git-diff(1) +=========== + +NAME +---- +git-diff - Some git command not yet documented. + + +SYNOPSIS +-------- +'git-diff' [ --option ] ... + +DESCRIPTION +----------- +Does something not yet documented. + + +OPTIONS +------- +--option:: + Some option not yet documented. + +...:: + Some argument not yet documented. + + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-fetch-script.txt b/Documentation/git-fetch-script.txt deleted file mode 100644 index d15222b..0000000 --- a/Documentation/git-fetch-script.txt +++ /dev/null @@ -1,41 +0,0 @@ -git-fetch-script(1) -=================== -v0.99.5, Aug 2005 - -NAME ----- -git-fetch-script - Download objects and a head from another repository. - - -SYNOPSIS --------- -'git-fetch-script' ... - - -DESCRIPTION ------------ -Fetches named heads or tags from another repository, along with -the objects necessary to complete them. - -The ref names and their object names of fetched refs are stored -in $GIT_DIR/FETCH_HEAD. This information is left for a later merge -operation done by "git resolve" or "git octopus". - - -OPTIONS -------- -include::pull-fetch-param.txt[] - - -Author ------- -Written by Linus Torvalds and -Junio C Hamano - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite diff --git a/Documentation/git-fetch.txt b/Documentation/git-fetch.txt new file mode 100644 index 0000000..017f646 --- /dev/null +++ b/Documentation/git-fetch.txt @@ -0,0 +1,41 @@ +git-fetch(1) +============ +v0.99.5, Aug 2005 + +NAME +---- +git-fetch - Download objects and a head from another repository. + + +SYNOPSIS +-------- +'git-fetch' ... + + +DESCRIPTION +----------- +Fetches named heads or tags from another repository, along with +the objects necessary to complete them. + +The ref names and their object names of fetched refs are stored +in $GIT_DIR/FETCH_HEAD. This information is left for a later merge +operation done by "git resolve" or "git octopus". + + +OPTIONS +------- +include::pull-fetch-param.txt[] + + +Author +------ +Written by Linus Torvalds and +Junio C Hamano + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite diff --git a/Documentation/git-format-patch-script.txt b/Documentation/git-format-patch-script.txt deleted file mode 100644 index ae3b8a1..0000000 --- a/Documentation/git-format-patch-script.txt +++ /dev/null @@ -1,38 +0,0 @@ -git-format-patch-script(1) -========================== - -NAME ----- -git-format-patch-script - Some git command not yet documented. - - -SYNOPSIS --------- -'git-format-patch-script' [ --option ] ... - -DESCRIPTION ------------ -Does something not yet documented. - - -OPTIONS -------- ---option:: - Some option not yet documented. - -...:: - Some argument not yet documented. - - -Author ------- -Written by Junio C Hamano - -Documentation --------------- -Documentation by Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt new file mode 100644 index 0000000..1788a97 --- /dev/null +++ b/Documentation/git-format-patch.txt @@ -0,0 +1,38 @@ +git-format-patch(1) +=================== + +NAME +---- +git-format-patch - Some git command not yet documented. + + +SYNOPSIS +-------- +'git-format-patch' [ --option ] ... + +DESCRIPTION +----------- +Does something not yet documented. + + +OPTIONS +------- +--option:: + Some option not yet documented. + +...:: + Some argument not yet documented. + + +Author +------ +Written by Junio C Hamano + +Documentation +-------------- +Documentation by Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-fsck-cache.txt b/Documentation/git-fsck-cache.txt deleted file mode 100644 index 13f1965..0000000 --- a/Documentation/git-fsck-cache.txt +++ /dev/null @@ -1,145 +0,0 @@ -git-fsck-cache(1) -================= -v0.1, May 2005 - -NAME ----- -git-fsck-cache - Verifies the connectivity and validity of the objects in the database - - -SYNOPSIS --------- -'git-fsck-cache' [--tags] [--root] [--unreachable] [--cache] [--standalone | --full] [--strict] [*] - -DESCRIPTION ------------ -Verifies the connectivity and validity of the objects in the database. - -OPTIONS -------- -:: - An object to treat as the head of an unreachability trace. - - If no objects are given, git-fsck-cache defaults to using the - index file and all SHA1 references in .git/refs/* as heads. - ---unreachable:: - Print out objects that exist but that aren't readable from any - of the reference nodes. - ---root:: - Report root nodes. - ---tags:: - Report tags. - ---cache:: - Consider any object recorded in the cache also as a head node for - an unreachability trace. - ---standalone:: - Limit checks to the contents of GIT_OBJECT_DIRECTORY - ($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; - 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 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 - objects that triggers this check, but it is recommended - to check new projects with this flag. - -It tests SHA1 and general object sanity, and it does full tracking of -the resulting reachability and everything else. It prints out any -corruption it finds (missing or bad objects), and if you use the -'--unreachable' flag it will also print out objects that exist but -that aren't readable from any of the specified head nodes. - -So for example - - git-fsck-cache --unreachable $(cat .git/HEAD .git/refs/heads/*) - -will do quite a _lot_ of verification on the tree. There are a few -extra validity tests to be added (make sure that tree objects are -sorted properly etc), but on the whole if "git-fsck-cache" is happy, you -do have a valid tree. - -Any corrupt objects you will have to find in backups or other archives -(ie you can just remove them and do an "rsync" with some other site in -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 -tracking system, not a quality assurance system ;) - -Extracted Diagnostics ---------------------- - -expect dangling commits - potential heads - due to lack of head information:: - You haven't specified any nodes as heads so it won't be - possible to differentiate between un-parented commits and - root nodes. - -missing sha1 directory '':: - The directory holding the sha1 objects is missing. - -unreachable :: - The object , isn't actually referred to directly - or indirectly in any of the trees or commits seen. This can - mean that there's another root node that you're not specifying - or that the tree is corrupt. If you haven't missed a root node - then you might as well delete unreachable nodes since they - can't be used. - -missing :: - The object , is referred to but isn't present in - the database. - -dangling :: - The object , is present in the database but never - 'directly' used. A dangling commit could be a root node. - -warning: git-fsck-cache: tree has full pathnames in it:: - And it shouldn't... - -sha1 mismatch :: - The database has an object who's sha1 doesn't match the - database value. - This indicates a serious data integrity problem. - -Environment Variables ---------------------- - -GIT_OBJECT_DIRECTORY:: - used to specify the object database root (usually $GIT_DIR/objects) - -GIT_INDEX_FILE:: - used to specify the index file of the cache - -GIT_ALTERNATE_OBJECT_DIRECTORIES: - used to specify additional object database roots (usually unset) - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-fsck-objects.txt b/Documentation/git-fsck-objects.txt new file mode 100644 index 0000000..2b86404 --- /dev/null +++ b/Documentation/git-fsck-objects.txt @@ -0,0 +1,145 @@ +git-fsck-objects(1) +=================== +v0.1, May 2005 + +NAME +---- +git-fsck-objects - Verifies the connectivity and validity of the objects in the database + + +SYNOPSIS +-------- +'git-fsck-objects' [--tags] [--root] [--unreachable] [--cache] [--standalone | --full] [--strict] [*] + +DESCRIPTION +----------- +Verifies the connectivity and validity of the objects in the database. + +OPTIONS +------- +:: + An object to treat as the head of an unreachability trace. + + If no objects are given, git-fsck-objects defaults to using the + index file and all SHA1 references in .git/refs/* as heads. + +--unreachable:: + Print out objects that exist but that aren't readable from any + of the reference nodes. + +--root:: + Report root nodes. + +--tags:: + Report tags. + +--cache:: + Consider any object recorded in the cache also as a head node for + an unreachability trace. + +--standalone:: + Limit checks to the contents of GIT_OBJECT_DIRECTORY + ($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; + 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 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 + objects that triggers this check, but it is recommended + to check new projects with this flag. + +It tests SHA1 and general object sanity, and it does full tracking of +the resulting reachability and everything else. It prints out any +corruption it finds (missing or bad objects), and if you use the +'--unreachable' flag it will also print out objects that exist but +that aren't readable from any of the specified head nodes. + +So for example + + git-fsck-objects --unreachable $(cat .git/HEAD .git/refs/heads/*) + +will do quite a _lot_ of verification on the tree. There are a few +extra validity tests to be added (make sure that tree objects are +sorted properly etc), but on the whole if "git-fsck-objects" is happy, you +do have a valid tree. + +Any corrupt objects you will have to find in backups or other archives +(ie you can just remove them and do an "rsync" with some other site in +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 +tracking system, not a quality assurance system ;) + +Extracted Diagnostics +--------------------- + +expect dangling commits - potential heads - due to lack of head information:: + You haven't specified any nodes as heads so it won't be + possible to differentiate between un-parented commits and + root nodes. + +missing sha1 directory '':: + The directory holding the sha1 objects is missing. + +unreachable :: + The object , isn't actually referred to directly + or indirectly in any of the trees or commits seen. This can + mean that there's another root node that you're not specifying + or that the tree is corrupt. If you haven't missed a root node + then you might as well delete unreachable nodes since they + can't be used. + +missing :: + The object , is referred to but isn't present in + the database. + +dangling :: + The object , is present in the database but never + 'directly' used. A dangling commit could be a root node. + +warning: git-fsck-objects: tree has full pathnames in it:: + And it shouldn't... + +sha1 mismatch :: + The database has an object who's sha1 doesn't match the + database value. + This indicates a serious data integrity problem. + +Environment Variables +--------------------- + +GIT_OBJECT_DIRECTORY:: + used to specify the object database root (usually $GIT_DIR/objects) + +GIT_INDEX_FILE:: + used to specify the index file of the cache + +GIT_ALTERNATE_OBJECT_DIRECTORIES: + used to specify additional object database roots (usually unset) + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-hash-object.txt b/Documentation/git-hash-object.txt index a77adab..4dd06f7 100644 --- a/Documentation/git-hash-object.txt +++ b/Documentation/git-hash-object.txt @@ -17,7 +17,7 @@ Computes the object ID value for an object with specified type with the contents of the named file (which can be outside of the work tree), and optionally writes the resulting object into the object database. Reports its object ID to its standard output. -This is used by "git-cvsimport-script" to update the cache +This is used by "git-cvsimport" to update the cache without modifying files in the work tree. When is not specified, it defaults to "blob". diff --git a/Documentation/git-http-fetch.txt b/Documentation/git-http-fetch.txt new file mode 100644 index 0000000..9cd862e --- /dev/null +++ b/Documentation/git-http-fetch.txt @@ -0,0 +1,42 @@ +git-http-fetch(1) +================= +v0.1, May 2005 + +NAME +---- +git-http-fetch - Downloads a remote GIT repository via HTTP + + +SYNOPSIS +-------- +'git-http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] commit-id url + +DESCRIPTION +----------- +Downloads a remote GIT repository via HTTP. + +-c:: + Get the commit objects. +-t:: + Get trees associated with the commit objects. +-a:: + Get all the objects. +-v:: + Report what is downloaded. + +-w :: + Writes the commit-id into the filename under $GIT_DIR/refs/ on + the local end after the transfer is complete. + +Author +------ +Written by Linus Torvalds + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-http-pull.txt b/Documentation/git-http-pull.txt deleted file mode 100644 index edc5ceb..0000000 --- a/Documentation/git-http-pull.txt +++ /dev/null @@ -1,42 +0,0 @@ -git-http-pull(1) -================ -v0.1, May 2005 - -NAME ----- -git-http-pull - Downloads a remote GIT repository via HTTP - - -SYNOPSIS --------- -'git-http-pull' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] commit-id url - -DESCRIPTION ------------ -Downloads a remote GIT repository via HTTP. - --c:: - Get the commit objects. --t:: - Get trees associated with the commit objects. --a:: - Get all the objects. --v:: - Report what is downloaded. - --w :: - Writes the commit-id into the filename under $GIT_DIR/refs/ on - the local end after the transfer is complete. - -Author ------- -Written by Linus Torvalds - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-local-fetch.txt b/Documentation/git-local-fetch.txt new file mode 100644 index 0000000..aad7d99 --- /dev/null +++ b/Documentation/git-local-fetch.txt @@ -0,0 +1,44 @@ +git-local-fetch(1) +================== +v0.1, May 2005 + +NAME +---- +git-local-fetch - Duplicates another GIT repository on a local system + + +SYNOPSIS +-------- +'git-local-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [-l] [-s] [-n] commit-id path + +DESCRIPTION +----------- +Duplicates another GIT repository on a local system. + +OPTIONS +------- +-c:: + Get the commit objects. +-t:: + Get trees associated with the commit objects. +-a:: + Get all the objects. +-v:: + Report what is downloaded. + +-w :: + Writes the commit-id into the filename under $GIT_DIR/refs/ on + the local end after the transfer is complete. + +Author +------ +Written by Junio C Hamano + +Documentation +-------------- +Documentation by David Greaves, Junio C Hamano and the git-list . + +GIT +--- +Part of the link:git.html[git] suite + diff --git a/Documentation/git-local-pull.txt b/Documentation/git-local-pull.txt deleted file mode 100644 index 4651e81..0000000 --- a/Documentation/git-local-pull.txt +++ /dev/null @@ -1,44 +0,0 @@ -git-local-pull(1) -================= -v0.1, May 2005 - -NAME ----- -git-local-pull - Duplicates another GIT repository on a local system - - -SYNOPSIS --------- -'git-local-pull' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [-l] [-s] [-n] commit-id path - -DESCRIPTION ------------ -Duplicates another GIT repository on a local system. - -OPTIONS -------- --c:: - Get the commit objects. --t:: - Get trees associated with the commit objects. --a:: - Get all the objects. --v:: - Report what is downloaded. - --w :: - Writes the commit-id into the filename under $GIT_DIR/refs/ on - the local end after the transfer is complete. - -Author ------- -Written by Junio C Hamano - -Documentation --------------- -Documentation by David Greaves, Junio C Hamano and the git-list . - -GIT ---- -Part of the link:git.html[git] suite - diff --git a/Documentation/git-log-script.txt b/Documentation/git-log-script.txt deleted file mode 100644 index ed359be..0000000 --- a/Documentation/git-log-script.txt +++ /dev/null @@ -1,45 +0,0 @@ -git-log-script(1) -================= -v0.99.4, Aug 2005 - -NAME ----- -git-log-script - Show commit logs - - -SYNOPSIS --------- -'git log'