<p>We divide git into high level ("porcelain") commands and low level\r
("plumbing") commands.</p>\r
</div>\r
-<h2>Low-level commands (plumbing)</h2>\r
+<h2>High-level commands (porcelain)</h2>\r
<div class="sectionbody">\r
-<p>Although git includes its\r
-own porcelain layer, its low-level commands are sufficient to support\r
-development of alternative porcelains. Developers of such porcelains\r
-might start by reading about <a href="git-update-index.html">git-update-index(1)</a> and\r
-<a href="git-read-tree.html">git-read-tree(1)</a>.</p>\r
-<p>We divide the low-level commands into commands that manipulate objects (in\r
-the repository, index, and working tree), commands that interrogate and\r
-compare objects, and commands that move objects and references between\r
-repositories.</p>\r
-<h3>Manipulation commands</h3>\r
+<p>We separate the porcelain commands into the main commands and some\r
+ancillary user utilities.</p>\r
+<h3>Main porcelain commands</h3>\r
<dl>\r
<dt>\r
-<a href="git-apply.html">git-apply(1)</a>\r
+<a href="git-add.html">git-add(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Reads a "diff -up1" or git generated patch file and\r
- applies it to the working tree.\r
+ Add paths to the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-checkout-index.html">git-checkout-index(1)</a>\r
+<a href="git-am.html">git-am(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Copy files from the index to the working tree.\r
+ Apply patches from a mailbox, but cooler.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-commit-tree.html">git-commit-tree(1)</a>\r
+<a href="git-applymbox.html">git-applymbox(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a new commit object.\r
+ Apply patches from a mailbox, original version by Linus.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-hash-object.html">git-hash-object(1)</a>\r
+<a href="git-archive.html">git-archive(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Computes the object ID from a file.\r
+ Creates an archive of files from a named tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-index-pack.html">git-index-pack(1)</a>\r
+<a href="git-bisect.html">git-bisect(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Build pack idx file for an existing packed archive.\r
+ Find the change that introduced a bug by binary search.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-init-db.html">git-init-db(1)</a>\r
+<a href="git-branch.html">git-branch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates an empty git object database, or reinitialize an\r
- existing one.\r
+ Create and Show branches.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-merge-index.html">git-merge-index(1)</a>\r
+<a href="git-checkout.html">git-checkout(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Runs a merge for files needing merging.\r
+ Checkout and switch to a branch.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-mktag.html">git-mktag(1)</a>\r
+<a href="git-cherry-pick.html">git-cherry-pick(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a tag object.\r
+ Cherry-pick the effect of an existing commit.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-mktree.html">git-mktree(1)</a>\r
+<a href="git-clean.html">git-clean(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Build a tree-object from ls-tree formatted text.\r
+ Remove untracked files from the working tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-pack-objects.html">git-pack-objects(1)</a>\r
+<a href="git-clone.html">git-clone(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a packed archive of objects.\r
+ Clones a repository into a new directory.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-prune-packed.html">git-prune-packed(1)</a>\r
+<a href="git-commit.html">git-commit(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Remove extra objects that are already in pack files.\r
+ Record changes to the repository.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-read-tree.html">git-read-tree(1)</a>\r
+<a href="git-diff.html">git-diff(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Reads tree information into the index.\r
+ Show changes between commits, commit and working tree, etc.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-repo-config.html">git-repo-config(1)</a>\r
+<a href="git-fetch.html">git-fetch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Get and set options in .git/config.\r
+ Download from a remote repository via various protocols.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-unpack-objects.html">git-unpack-objects(1)</a>\r
+<a href="git-format-patch.html">git-format-patch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Unpacks objects out of a packed archive.\r
+ Prepare patches for e-mail submission.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-update-index.html">git-update-index(1)</a>\r
+<a href="git-grep.html">git-grep(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Registers files in the working tree to the index.\r
+ Print lines matching a pattern.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-write-tree.html">git-write-tree(1)</a>\r
+<a href="gitk.html">gitk(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a tree from the index.\r
+ The git repository browser.\r
</p>\r
</dd>\r
-</dl>\r
-<h3>Interrogation commands</h3>\r
-<dl>\r
<dt>\r
-<a href="git-cat-file.html">git-cat-file(1)</a>\r
+<a href="git-log.html">git-log(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Provide content or type/size information for repository objects.\r
+ Shows commit logs.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-describe.html">git-describe(1)</a>\r
+<a href="git-ls-remote.html">git-ls-remote(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Show the most recent tag that is reachable from a commit.\r
+ Shows references in a remote or local repository.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-diff-index.html">git-diff-index(1)</a>\r
+<a href="git-merge.html">git-merge(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Compares content and mode of blobs between the index and repository.\r
+ Grand unified merge driver.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-diff-files.html">git-diff-files(1)</a>\r
+<a href="git-mv.html">git-mv(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Compares files in the working tree and the index.\r
+ Move or rename a file, a directory, or a symlink.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-diff-stages.html">git-diff-stages(1)</a>\r
+<a href="git-pull.html">git-pull(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Compares two "merge stages" in the index.\r
+ Fetch from and merge with a remote repository or a local branch.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-diff-tree.html">git-diff-tree(1)</a>\r
+<a href="git-push.html">git-push(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Compares the content and mode of blobs found via two tree objects.\r
+ Update remote refs along with associated objects.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-for-each-ref.html">git-for-each-ref(1)</a>\r
+<a href="git-rebase.html">git-rebase(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Output information on each ref.\r
+ Rebase local commits to the updated upstream head.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-fsck-objects.html">git-fsck-objects(1)</a>\r
+<a href="git-repack.html">git-repack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Verifies the connectivity and validity of the objects in the database.\r
+ Pack unpacked objects in a repository.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-ls-files.html">git-ls-files(1)</a>\r
+<a href="git-rerere.html">git-rerere(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Information about files in the index and the working tree.\r
+ Reuse recorded resolution of conflicted merges.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-ls-tree.html">git-ls-tree(1)</a>\r
+<a href="git-reset.html">git-reset(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Displays a tree object in human readable form.\r
+ Reset current HEAD to the specified state.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-merge-base.html">git-merge-base(1)</a>\r
+<a href="git-resolve.html">git-resolve(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Finds as good common ancestors as possible for a merge.\r
+ Merge two commits.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-name-rev.html">git-name-rev(1)</a>\r
+<a href="git-revert.html">git-revert(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Find symbolic names for given revs.\r
+ Revert an existing commit.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-pack-redundant.html">git-pack-redundant(1)</a>\r
+<a href="git-rm.html">git-rm(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Find redundant pack files.\r
+ Remove files from the working tree and from the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-rev-list.html">git-rev-list(1)</a>\r
+<a href="git-shortlog.html">git-shortlog(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Lists commit objects in reverse chronological order.\r
+ Summarizes <em>git log</em> output.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-show-index.html">git-show-index(1)</a>\r
+<a href="git-show.html">git-show(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Displays contents of a pack idx file.\r
+ Show one commit log and its diff.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-tar-tree.html">git-tar-tree(1)</a>\r
+<a href="git-show-branch.html">git-show-branch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a tar archive of the files in the named tree object.\r
+ Show branches and their commits.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-unpack-file.html">git-unpack-file(1)</a>\r
+<a href="git-status.html">git-status(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates a temporary file with a blob's contents.\r
+ Shows the working tree status.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-var.html">git-var(1)</a>\r
+<a href="git-verify-tag.html">git-verify-tag(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Displays a git logical variable.\r
+ Check the GPG signature of tag.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-verify-pack.html">git-verify-pack(1)</a>\r
+<a href="git-whatchanged.html">git-whatchanged(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Validates packed git archive files.\r
+ Shows commit logs and differences they introduce.\r
</p>\r
</dd>\r
</dl>\r
-<p>In general, the interrogate commands do not touch the files in\r
-the working tree.</p>\r
-<h3>Synching repositories</h3>\r
+<h3>Ancillary Commands</h3>\r
+<p>Manipulators:</p>\r
<dl>\r
<dt>\r
-<a href="git-fetch-pack.html">git-fetch-pack(1)</a>\r
+<a href="git-applypatch.html">git-applypatch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Updates from a remote repository (engine for ssh and\r
- local transport).\r
+ Apply one patch extracted from an e-mail.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-http-fetch.html">git-http-fetch(1)</a>\r
+<a href="git-archimport.html">git-archimport(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Downloads a remote git repository via HTTP by walking\r
- commit chain.\r
+ Import an arch repository into git.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-local-fetch.html">git-local-fetch(1)</a>\r
+<a href="git-convert-objects.html">git-convert-objects(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Duplicates another git repository on a local system by\r
- walking commit chain.\r
+ Converts old-style git repository.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-peek-remote.html">git-peek-remote(1)</a>\r
+<a href="git-cvsimport.html">git-cvsimport(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Lists references on a remote repository using\r
- upload-pack protocol (engine for ssh and local\r
- transport).\r
+ Salvage your data out of another SCM people love to hate.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-receive-pack.html">git-receive-pack(1)</a>\r
+<a href="git-cvsexportcommit.html">git-cvsexportcommit(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Invoked by <em>git-send-pack</em> to receive what is pushed to it.\r
+ Export a single commit to a CVS checkout.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-send-pack.html">git-send-pack(1)</a>\r
+<a href="git-cvsserver.html">git-cvsserver(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Pushes to a remote repository, intelligently.\r
+ A CVS server emulator for git.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-http-push.html">git-http-push(1)</a>\r
+<a href="git-lost-found.html">git-lost-found(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Push missing objects using HTTP/DAV.\r
+ Recover lost refs that luckily have not yet been pruned.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-shell.html">git-shell(1)</a>\r
+<a href="git-merge-one-file.html">git-merge-one-file(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Restricted shell for GIT-only SSH access.\r
+ The standard helper program to use with <tt>git-merge-index</tt>.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-ssh-fetch.html">git-ssh-fetch(1)</a>\r
+<a href="git-prune.html">git-prune(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Pulls from a remote repository over ssh connection by\r
- walking commit chain.\r
+ Prunes all unreachable objects from the object database.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-ssh-upload.html">git-ssh-upload(1)</a>\r
+<a href="git-quiltimport.html">git-quiltimport(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Helper "server-side" program used by git-ssh-fetch.\r
+ Applies a quilt patchset onto the current branch.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-update-server-info.html">git-update-server-info(1)</a>\r
+<a href="git-relink.html">git-relink(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Updates auxiliary information on a dumb server to help\r
- clients discover references and packs on it.\r
+ Hardlink common objects in local repositories.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-upload-archive.html">git-upload-archive(1)</a>\r
+<a href="git-svn.html">git-svn(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Invoked by <em>git-archive</em> to send a generated archive.\r
+ Bidirectional operation between a single Subversion branch and git.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-upload-pack.html">git-upload-pack(1)</a>\r
+<a href="git-svnimport.html">git-svnimport(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Invoked by <em>git-fetch-pack</em> to push\r
- what are asked for.\r
+ Import a SVN repository into git.\r
</p>\r
</dd>\r
-</dl>\r
-</div>\r
-<h2>High-level commands (porcelain)</h2>\r
-<div class="sectionbody">\r
-<p>We separate the porcelain commands into the main commands and some\r
-ancillary user utilities.</p>\r
-<h3>Main porcelain commands</h3>\r
-<dl>\r
<dt>\r
-<a href="git-add.html">git-add(1)</a>\r
+<a href="git-sh-setup.html">git-sh-setup(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Add paths to the index.\r
+ Common git shell script setup code.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-am.html">git-am(1)</a>\r
+<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Apply patches from a mailbox, but cooler.\r
+ Read and modify symbolic refs.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-applymbox.html">git-applymbox(1)</a>\r
+<a href="git-tag.html">git-tag(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Apply patches from a mailbox, original version by Linus.\r
+ An example script to create a tag object signed with GPG.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-archive.html">git-archive(1)</a>\r
+<a href="git-update-ref.html">git-update-ref(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Creates an archive of files from a named tree.\r
+ Update the object name stored in a ref safely.\r
</p>\r
</dd>\r
+</dl>\r
+<p>Interrogators:</p>\r
+<dl>\r
<dt>\r
-<a href="git-bisect.html">git-bisect(1)</a>\r
+<a href="git-annotate.html">git-annotate(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Find the change that introduced a bug by binary search.\r
+ Annotate file lines with commit info.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-branch.html">git-branch(1)</a>\r
+<a href="git-blame.html">git-blame(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Create and Show branches.\r
+ Blame file lines on commits.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-checkout.html">git-checkout(1)</a>\r
+<a href="git-check-ref-format.html">git-check-ref-format(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Checkout and switch to a branch.\r
+ Make sure ref name is well formed.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-cherry-pick.html">git-cherry-pick(1)</a>\r
+<a href="git-cherry.html">git-cherry(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Cherry-pick the effect of an existing commit.\r
+ Find commits not merged upstream.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-clean.html">git-clean(1)</a>\r
+<a href="git-count-objects.html">git-count-objects(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Remove untracked files from the working tree.\r
+ Count unpacked number of objects and their disk consumption.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-clone.html">git-clone(1)</a>\r
+<a href="git-daemon.html">git-daemon(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Clones a repository into a new directory.\r
+ A really simple server for git repositories.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-commit.html">git-commit(1)</a>\r
+<a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Record changes to the repository.\r
+ Produce a merge commit message.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-diff.html">git-diff(1)</a>\r
+<a href="git-get-tar-commit-id.html">git-get-tar-commit-id(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Show changes between commits, commit and working tree, etc.\r
+ Extract commit ID from an archive created using git-tar-tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-fetch.html">git-fetch(1)</a>\r
+<a href="git-imap-send.html">git-imap-send(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Download from a remote repository via various protocols.\r
+ Dump a mailbox from stdin into an imap folder.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-format-patch.html">git-format-patch(1)</a>\r
+<a href="git-instaweb.html">git-instaweb(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Prepare patches for e-mail submission.\r
+ Instantly browse your working repository in gitweb.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-grep.html">git-grep(1)</a>\r
+<a href="git-mailinfo.html">git-mailinfo(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Print lines matching a pattern.\r
+ Extracts patch and authorship information from a single\r
+ e-mail message, optionally transliterating the commit\r
+ message into utf-8.\r
</p>\r
</dd>\r
<dt>\r
-<a href="gitk.html">gitk(1)</a>\r
+<a href="git-mailsplit.html">git-mailsplit(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- The git repository browser.\r
+ A stupid program to split UNIX mbox format mailbox into\r
+ individual pieces of e-mail.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-log.html">git-log(1)</a>\r
+<a href="git-merge-tree.html">git-merge-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Shows commit logs.\r
+ Show three-way merge without touching index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-ls-remote.html">git-ls-remote(1)</a>\r
+<a href="git-patch-id.html">git-patch-id(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Shows references in a remote or local repository.\r
+ Compute unique ID for a patch.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-merge.html">git-merge(1)</a>\r
+<a href="git-parse-remote.html">git-parse-remote(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Grand unified merge driver.\r
+ Routines to help parsing <tt>$GIT_DIR/remotes/</tt> files.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-mv.html">git-mv(1)</a>\r
+<a href="git-request-pull.html">git-request-pull(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Move or rename a file, a directory, or a symlink.\r
+ git-request-pull.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-pull.html">git-pull(1)</a>\r
+<a href="git-rev-parse.html">git-rev-parse(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Fetch from and merge with a remote repository.\r
+ Pick out and massage parameters.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-push.html">git-push(1)</a>\r
+<a href="git-send-email.html">git-send-email(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Update remote refs along with associated objects.\r
+ Send patch e-mails out of "format-patch --mbox" output.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-rebase.html">git-rebase(1)</a>\r
+<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Rebase local commits to the updated upstream head.\r
+ Read and modify symbolic refs.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-repack.html">git-repack(1)</a>\r
+<a href="git-stripspace.html">git-stripspace(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Pack unpacked objects in a repository.\r
+ Filter out empty lines.\r
</p>\r
</dd>\r
+</dl>\r
+</div>\r
+<h2>Low-level commands (plumbing)</h2>\r
+<div class="sectionbody">\r
+<p>Although git includes its\r
+own porcelain layer, its low-level commands are sufficient to support\r
+development of alternative porcelains. Developers of such porcelains\r
+might start by reading about <a href="git-update-index.html">git-update-index(1)</a> and\r
+<a href="git-read-tree.html">git-read-tree(1)</a>.</p>\r
+<p>We divide the low-level commands into commands that manipulate objects (in\r
+the repository, index, and working tree), commands that interrogate and\r
+compare objects, and commands that move objects and references between\r
+repositories.</p>\r
+<h3>Manipulation commands</h3>\r
+<dl>\r
<dt>\r
-<a href="git-rerere.html">git-rerere(1)</a>\r
+<a href="git-apply.html">git-apply(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Reuse recorded resolution of conflicted merges.\r
+ Reads a "diff -up1" or git generated patch file and\r
+ applies it to the working tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-reset.html">git-reset(1)</a>\r
+<a href="git-checkout-index.html">git-checkout-index(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Reset current HEAD to the specified state.\r
+ Copy files from the index to the working tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-resolve.html">git-resolve(1)</a>\r
+<a href="git-commit-tree.html">git-commit-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Merge two commits.\r
+ Creates a new commit object.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-revert.html">git-revert(1)</a>\r
+<a href="git-hash-object.html">git-hash-object(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Revert an existing commit.\r
+ Computes the object ID from a file.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-rm.html">git-rm(1)</a>\r
+<a href="git-index-pack.html">git-index-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Remove files from the working tree and from the index.\r
+ Build pack idx file for an existing packed archive.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-shortlog.html">git-shortlog(1)</a>\r
+<a href="git-init-db.html">git-init-db(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Summarizes <em>git log</em> output.\r
+ Creates an empty git object database, or reinitialize an\r
+ existing one.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-show.html">git-show(1)</a>\r
+<a href="git-merge-index.html">git-merge-index(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Show one commit log and its diff.\r
+ Runs a merge for files needing merging.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-show-branch.html">git-show-branch(1)</a>\r
+<a href="git-mktag.html">git-mktag(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Show branches and their commits.\r
+ Creates a tag object.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-status.html">git-status(1)</a>\r
+<a href="git-mktree.html">git-mktree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Shows the working tree status.\r
+ Build a tree-object from ls-tree formatted text.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-verify-tag.html">git-verify-tag(1)</a>\r
+<a href="git-pack-objects.html">git-pack-objects(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Check the GPG signature of tag.\r
+ Creates a packed archive of objects.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-whatchanged.html">git-whatchanged(1)</a>\r
+<a href="git-prune-packed.html">git-prune-packed(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Shows commit logs and differences they introduce.\r
+ Remove extra objects that are already in pack files.\r
</p>\r
</dd>\r
-</dl>\r
-<h3>Ancillary Commands</h3>\r
-<p>Manipulators:</p>\r
-<dl>\r
<dt>\r
-<a href="git-applypatch.html">git-applypatch(1)</a>\r
+<a href="git-read-tree.html">git-read-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Apply one patch extracted from an e-mail.\r
+ Reads tree information into the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-archimport.html">git-archimport(1)</a>\r
+<a href="git-repo-config.html">git-repo-config(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Import an arch repository into git.\r
+ Get and set options in .git/config.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-convert-objects.html">git-convert-objects(1)</a>\r
+<a href="git-unpack-objects.html">git-unpack-objects(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Converts old-style git repository.\r
+ Unpacks objects out of a packed archive.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-cvsimport.html">git-cvsimport(1)</a>\r
+<a href="git-update-index.html">git-update-index(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Salvage your data out of another SCM people love to hate.\r
+ Registers files in the working tree to the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-cvsexportcommit.html">git-cvsexportcommit(1)</a>\r
+<a href="git-write-tree.html">git-write-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Export a single commit to a CVS checkout.\r
+ Creates a tree from the index.\r
</p>\r
</dd>\r
+</dl>\r
+<h3>Interrogation commands</h3>\r
+<dl>\r
<dt>\r
-<a href="git-cvsserver.html">git-cvsserver(1)</a>\r
+<a href="git-cat-file.html">git-cat-file(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- A CVS server emulator for git.\r
+ Provide content or type/size information for repository objects.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-lost-found.html">git-lost-found(1)</a>\r
+<a href="git-describe.html">git-describe(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Recover lost refs that luckily have not yet been pruned.\r
+ Show the most recent tag that is reachable from a commit.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-merge-one-file.html">git-merge-one-file(1)</a>\r
+<a href="git-diff-index.html">git-diff-index(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- The standard helper program to use with <tt>git-merge-index</tt>.\r
+ Compares content and mode of blobs between the index and repository.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-prune.html">git-prune(1)</a>\r
+<a href="git-diff-files.html">git-diff-files(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Prunes all unreachable objects from the object database.\r
+ Compares files in the working tree and the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-quiltimport.html">git-quiltimport(1)</a>\r
+<a href="git-diff-stages.html">git-diff-stages(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Applies a quilt patchset onto the current branch.\r
+ Compares two "merge stages" in the index.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-relink.html">git-relink(1)</a>\r
+<a href="git-diff-tree.html">git-diff-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Hardlink common objects in local repositories.\r
+ Compares the content and mode of blobs found via two tree objects.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-svn.html">git-svn(1)</a>\r
+<a href="git-for-each-ref.html">git-for-each-ref(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Bidirectional operation between a single Subversion branch and git.\r
+ Output information on each ref.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-svnimport.html">git-svnimport(1)</a>\r
+<a href="git-fsck-objects.html">git-fsck-objects(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Import a SVN repository into git.\r
+ Verifies the connectivity and validity of the objects in the database.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-sh-setup.html">git-sh-setup(1)</a>\r
+<a href="git-ls-files.html">git-ls-files(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Common git shell script setup code.\r
+ Information about files in the index and the working tree.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>\r
+<a href="git-ls-tree.html">git-ls-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Read and modify symbolic refs.\r
+ Displays a tree object in human readable form.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-tag.html">git-tag(1)</a>\r
+<a href="git-merge-base.html">git-merge-base(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- An example script to create a tag object signed with GPG.\r
+ Finds as good common ancestors as possible for a merge.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-update-ref.html">git-update-ref(1)</a>\r
+<a href="git-name-rev.html">git-name-rev(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Update the object name stored in a ref safely.\r
+ Find symbolic names for given revs.\r
</p>\r
</dd>\r
-</dl>\r
-<p>Interrogators:</p>\r
-<dl>\r
<dt>\r
-<a href="git-annotate.html">git-annotate(1)</a>\r
+<a href="git-pack-redundant.html">git-pack-redundant(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Annotate file lines with commit info.\r
+ Find redundant pack files.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-blame.html">git-blame(1)</a>\r
+<a href="git-rev-list.html">git-rev-list(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Blame file lines on commits.\r
+ Lists commit objects in reverse chronological order.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-check-ref-format.html">git-check-ref-format(1)</a>\r
+<a href="git-show-index.html">git-show-index(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Make sure ref name is well formed.\r
+ Displays contents of a pack idx file.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-cherry.html">git-cherry(1)</a>\r
+<a href="git-tar-tree.html">git-tar-tree(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Find commits not merged upstream.\r
+ Creates a tar archive of the files in the named tree object.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-count-objects.html">git-count-objects(1)</a>\r
+<a href="git-unpack-file.html">git-unpack-file(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Count unpacked number of objects and their disk consumption.\r
+ Creates a temporary file with a blob's contents.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-daemon.html">git-daemon(1)</a>\r
+<a href="git-var.html">git-var(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- A really simple server for git repositories.\r
+ Displays a git logical variable.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>\r
+<a href="git-verify-pack.html">git-verify-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Produce a merge commit message.\r
+ Validates packed git archive files.\r
</p>\r
</dd>\r
+</dl>\r
+<p>In general, the interrogate commands do not touch the files in\r
+the working tree.</p>\r
+<h3>Synching repositories</h3>\r
+<dl>\r
<dt>\r
-<a href="git-get-tar-commit-id.html">git-get-tar-commit-id(1)</a>\r
+<a href="git-fetch-pack.html">git-fetch-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Extract commit ID from an archive created using git-tar-tree.\r
+ Updates from a remote repository (engine for ssh and\r
+ local transport).\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-imap-send.html">git-imap-send(1)</a>\r
+<a href="git-http-fetch.html">git-http-fetch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Dump a mailbox from stdin into an imap folder.\r
+ Downloads a remote git repository via HTTP by walking\r
+ commit chain.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-instaweb.html">git-instaweb(1)</a>\r
+<a href="git-local-fetch.html">git-local-fetch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Instantly browse your working repository in gitweb.\r
+ Duplicates another git repository on a local system by\r
+ walking commit chain.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-mailinfo.html">git-mailinfo(1)</a>\r
+<a href="git-peek-remote.html">git-peek-remote(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Extracts patch and authorship information from a single\r
- e-mail message, optionally transliterating the commit\r
- message into utf-8.\r
+ Lists references on a remote repository using\r
+ upload-pack protocol (engine for ssh and local\r
+ transport).\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-mailsplit.html">git-mailsplit(1)</a>\r
+<a href="git-receive-pack.html">git-receive-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- A stupid program to split UNIX mbox format mailbox into\r
- individual pieces of e-mail.\r
+ Invoked by <em>git-send-pack</em> to receive what is pushed to it.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-merge-tree.html">git-merge-tree(1)</a>\r
+<a href="git-send-pack.html">git-send-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Show three-way merge without touching index.\r
+ Pushes to a remote repository, intelligently.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-patch-id.html">git-patch-id(1)</a>\r
+<a href="git-http-push.html">git-http-push(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Compute unique ID for a patch.\r
+ Push missing objects using HTTP/DAV.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-parse-remote.html">git-parse-remote(1)</a>\r
+<a href="git-shell.html">git-shell(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Routines to help parsing <tt>$GIT_DIR/remotes/</tt> files.\r
+ Restricted shell for GIT-only SSH access.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-request-pull.html">git-request-pull(1)</a>\r
+<a href="git-ssh-fetch.html">git-ssh-fetch(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- git-request-pull.\r
+ Pulls from a remote repository over ssh connection by\r
+ walking commit chain.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-rev-parse.html">git-rev-parse(1)</a>\r
+<a href="git-ssh-upload.html">git-ssh-upload(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Pick out and massage parameters.\r
+ Helper "server-side" program used by git-ssh-fetch.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-send-email.html">git-send-email(1)</a>\r
+<a href="git-update-server-info.html">git-update-server-info(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Send patch e-mails out of "format-patch --mbox" output.\r
+ Updates auxiliary information on a dumb server to help\r
+ clients discover references and packs on it.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-symbolic-ref.html">git-symbolic-ref(1)</a>\r
+<a href="git-upload-archive.html">git-upload-archive(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Read and modify symbolic refs.\r
+ Invoked by <em>git-archive</em> to send a generated archive.\r
</p>\r
</dd>\r
<dt>\r
-<a href="git-stripspace.html">git-stripspace(1)</a>\r
+<a href="git-upload-pack.html">git-upload-pack(1)</a>\r
</dt>\r
<dd>\r
<p>\r
- Filter out empty lines.\r
+ Invoked by <em>git-fetch-pack</em> to push\r
+ what are asked for.\r
</p>\r
</dd>\r
</dl>\r
</div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 28-Oct-2006 21:28:52 UTC\r
+Last updated 29-Oct-2006 20:47:13 UTC\r
</div>\r
</div>\r
</body>\r
We divide git into high level ("porcelain") commands and low level
("plumbing") commands.
-Low-level commands (plumbing)
------------------------------
-
-Although git includes its
-own porcelain layer, its low-level commands are sufficient to support
-development of alternative porcelains. Developers of such porcelains
-might start by reading about gitlink:git-update-index[1] and
-gitlink:git-read-tree[1].
-
-We divide the low-level commands into commands that manipulate objects (in
-the repository, index, and working tree), commands that interrogate and
-compare objects, and commands that move objects and references between
-repositories.
-
-Manipulation commands
-~~~~~~~~~~~~~~~~~~~~~
-gitlink:git-apply[1]::
- Reads a "diff -up1" or git generated patch file and
- applies it to the working tree.
-
-gitlink:git-checkout-index[1]::
- Copy files from the index to the working tree.
-
-gitlink:git-commit-tree[1]::
- Creates a new commit object.
-
-gitlink:git-hash-object[1]::
- Computes the object ID from a file.
-
-gitlink:git-index-pack[1]::
- Build pack idx file for an existing packed archive.
-
-gitlink:git-init-db[1]::
- Creates an empty git object database, or reinitialize an
- existing one.
-
-gitlink:git-merge-index[1]::
- Runs a merge for files needing merging.
-
-gitlink:git-mktag[1]::
- Creates a tag object.
-
-gitlink:git-mktree[1]::
- Build a tree-object from ls-tree formatted text.
-
-gitlink:git-pack-objects[1]::
- Creates a packed archive of objects.
-
-gitlink:git-prune-packed[1]::
- Remove extra objects that are already in pack files.
-
-gitlink:git-read-tree[1]::
- Reads tree information into the index.
-
-gitlink:git-repo-config[1]::
- Get and set options in .git/config.
-
-gitlink:git-unpack-objects[1]::
- Unpacks objects out of a packed archive.
-
-gitlink:git-update-index[1]::
- Registers files in the working tree to the index.
-
-gitlink:git-write-tree[1]::
- Creates a tree from the index.
-
-
-Interrogation commands
-~~~~~~~~~~~~~~~~~~~~~~
-
-gitlink:git-cat-file[1]::
- Provide content or type/size information for repository objects.
-
-gitlink:git-describe[1]::
- Show the most recent tag that is reachable from a commit.
-
-gitlink:git-diff-index[1]::
- Compares content and mode of blobs between the index and repository.
-
-gitlink:git-diff-files[1]::
- Compares files in the working tree and the index.
-
-gitlink:git-diff-stages[1]::
- Compares two "merge stages" in the index.
-
-gitlink:git-diff-tree[1]::
- Compares the content and mode of blobs found via two tree objects.
-
-gitlink:git-for-each-ref[1]::
- Output information on each ref.
-
-gitlink:git-fsck-objects[1]::
- Verifies the connectivity and validity of the objects in the database.
-
-gitlink:git-ls-files[1]::
- Information about files in the index and the working tree.
-
-gitlink:git-ls-tree[1]::
- Displays a tree object in human readable form.
-
-gitlink:git-merge-base[1]::
- Finds as good common ancestors as possible for a merge.
-
-gitlink:git-name-rev[1]::
- Find symbolic names for given revs.
-
-gitlink:git-pack-redundant[1]::
- Find redundant pack files.
-
-gitlink:git-rev-list[1]::
- Lists commit objects in reverse chronological order.
-
-gitlink:git-show-index[1]::
- Displays contents of a pack idx file.
-
-gitlink:git-tar-tree[1]::
- Creates a tar archive of the files in the named tree object.
-
-gitlink:git-unpack-file[1]::
- Creates a temporary file with a blob's contents.
-
-gitlink:git-var[1]::
- Displays a git logical variable.
-
-gitlink:git-verify-pack[1]::
- Validates packed git archive files.
-
-In general, the interrogate commands do not touch the files in
-the working tree.
-
-
-Synching repositories
-~~~~~~~~~~~~~~~~~~~~~
-
-gitlink:git-fetch-pack[1]::
- Updates from a remote repository (engine for ssh and
- local transport).
-
-gitlink:git-http-fetch[1]::
- Downloads a remote git repository via HTTP by walking
- commit chain.
-
-gitlink:git-local-fetch[1]::
- Duplicates another git repository on a local system by
- walking commit chain.
-
-gitlink:git-peek-remote[1]::
- Lists references on a remote repository using
- upload-pack protocol (engine for ssh and local
- transport).
-
-gitlink:git-receive-pack[1]::
- Invoked by 'git-send-pack' to receive what is pushed to it.
-
-gitlink:git-send-pack[1]::
- Pushes to a remote repository, intelligently.
-
-gitlink:git-http-push[1]::
- Push missing objects using HTTP/DAV.
-
-gitlink:git-shell[1]::
- Restricted shell for GIT-only SSH access.
-
-gitlink:git-ssh-fetch[1]::
- Pulls from a remote repository over ssh connection by
- walking commit chain.
-
-gitlink:git-ssh-upload[1]::
- Helper "server-side" program used by git-ssh-fetch.
-
-gitlink:git-update-server-info[1]::
- Updates auxiliary information on a dumb server to help
- clients discover references and packs on it.
-
-gitlink:git-upload-archive[1]::
- Invoked by 'git-archive' to send a generated archive.
-
-gitlink:git-upload-pack[1]::
- Invoked by 'git-fetch-pack' to push
- what are asked for.
-
-
High-level commands (porcelain)
-------------------------------
Move or rename a file, a directory, or a symlink.
gitlink:git-pull[1]::
- Fetch from and merge with a remote repository.
+ Fetch from and merge with a remote repository or a local branch.
gitlink:git-push[1]::
Update remote refs along with associated objects.
Filter out empty lines.
+Low-level commands (plumbing)
+-----------------------------
+
+Although git includes its
+own porcelain layer, its low-level commands are sufficient to support
+development of alternative porcelains. Developers of such porcelains
+might start by reading about gitlink:git-update-index[1] and
+gitlink:git-read-tree[1].
+
+We divide the low-level commands into commands that manipulate objects (in
+the repository, index, and working tree), commands that interrogate and
+compare objects, and commands that move objects and references between
+repositories.
+
+Manipulation commands
+~~~~~~~~~~~~~~~~~~~~~
+gitlink:git-apply[1]::
+ Reads a "diff -up1" or git generated patch file and
+ applies it to the working tree.
+
+gitlink:git-checkout-index[1]::
+ Copy files from the index to the working tree.
+
+gitlink:git-commit-tree[1]::
+ Creates a new commit object.
+
+gitlink:git-hash-object[1]::
+ Computes the object ID from a file.
+
+gitlink:git-index-pack[1]::
+ Build pack idx file for an existing packed archive.
+
+gitlink:git-init-db[1]::
+ Creates an empty git object database, or reinitialize an
+ existing one.
+
+gitlink:git-merge-index[1]::
+ Runs a merge for files needing merging.
+
+gitlink:git-mktag[1]::
+ Creates a tag object.
+
+gitlink:git-mktree[1]::
+ Build a tree-object from ls-tree formatted text.
+
+gitlink:git-pack-objects[1]::
+ Creates a packed archive of objects.
+
+gitlink:git-prune-packed[1]::
+ Remove extra objects that are already in pack files.
+
+gitlink:git-read-tree[1]::
+ Reads tree information into the index.
+
+gitlink:git-repo-config[1]::
+ Get and set options in .git/config.
+
+gitlink:git-unpack-objects[1]::
+ Unpacks objects out of a packed archive.
+
+gitlink:git-update-index[1]::
+ Registers files in the working tree to the index.
+
+gitlink:git-write-tree[1]::
+ Creates a tree from the index.
+
+
+Interrogation commands
+~~~~~~~~~~~~~~~~~~~~~~
+
+gitlink:git-cat-file[1]::
+ Provide content or type/size information for repository objects.
+
+gitlink:git-describe[1]::
+ Show the most recent tag that is reachable from a commit.
+
+gitlink:git-diff-index[1]::
+ Compares content and mode of blobs between the index and repository.
+
+gitlink:git-diff-files[1]::
+ Compares files in the working tree and the index.
+
+gitlink:git-diff-stages[1]::
+ Compares two "merge stages" in the index.
+
+gitlink:git-diff-tree[1]::
+ Compares the content and mode of blobs found via two tree objects.
+
+gitlink:git-for-each-ref[1]::
+ Output information on each ref.
+
+gitlink:git-fsck-objects[1]::
+ Verifies the connectivity and validity of the objects in the database.
+
+gitlink:git-ls-files[1]::
+ Information about files in the index and the working tree.
+
+gitlink:git-ls-tree[1]::
+ Displays a tree object in human readable form.
+
+gitlink:git-merge-base[1]::
+ Finds as good common ancestors as possible for a merge.
+
+gitlink:git-name-rev[1]::
+ Find symbolic names for given revs.
+
+gitlink:git-pack-redundant[1]::
+ Find redundant pack files.
+
+gitlink:git-rev-list[1]::
+ Lists commit objects in reverse chronological order.
+
+gitlink:git-show-index[1]::
+ Displays contents of a pack idx file.
+
+gitlink:git-tar-tree[1]::
+ Creates a tar archive of the files in the named tree object.
+
+gitlink:git-unpack-file[1]::
+ Creates a temporary file with a blob's contents.
+
+gitlink:git-var[1]::
+ Displays a git logical variable.
+
+gitlink:git-verify-pack[1]::
+ Validates packed git archive files.
+
+In general, the interrogate commands do not touch the files in
+the working tree.
+
+
+Synching repositories
+~~~~~~~~~~~~~~~~~~~~~
+
+gitlink:git-fetch-pack[1]::
+ Updates from a remote repository (engine for ssh and
+ local transport).
+
+gitlink:git-http-fetch[1]::
+ Downloads a remote git repository via HTTP by walking
+ commit chain.
+
+gitlink:git-local-fetch[1]::
+ Duplicates another git repository on a local system by
+ walking commit chain.
+
+gitlink:git-peek-remote[1]::
+ Lists references on a remote repository using
+ upload-pack protocol (engine for ssh and local
+ transport).
+
+gitlink:git-receive-pack[1]::
+ Invoked by 'git-send-pack' to receive what is pushed to it.
+
+gitlink:git-send-pack[1]::
+ Pushes to a remote repository, intelligently.
+
+gitlink:git-http-push[1]::
+ Push missing objects using HTTP/DAV.
+
+gitlink:git-shell[1]::
+ Restricted shell for GIT-only SSH access.
+
+gitlink:git-ssh-fetch[1]::
+ Pulls from a remote repository over ssh connection by
+ walking commit chain.
+
+gitlink:git-ssh-upload[1]::
+ Helper "server-side" program used by git-ssh-fetch.
+
+gitlink:git-update-server-info[1]::
+ Updates auxiliary information on a dumb server to help
+ clients discover references and packs on it.
+
+gitlink:git-upload-archive[1]::
+ Invoked by 'git-archive' to send a generated archive.
+
+gitlink:git-upload-pack[1]::
+ Invoked by 'git-fetch-pack' to push
+ what are asked for.
+
+
Configuration Mechanism
-----------------------