X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=Documentation%2Fgit.txt;h=06b2e5303edea64f1a33767c3d9d474fdef3a6e4;hb=521a3f676794987bfd03703fe58fbec46ed69d49;hp=45773db135684529640cb73a4e8129b04490521a;hpb=a9572072f0ab0ac97e64b0dc01254a3ad95befe1;p=git.git diff --git a/Documentation/git.txt b/Documentation/git.txt index 45773db1..06b2e530 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -12,69 +12,65 @@ SYNOPSIS DESCRIPTION ----------- -'git' is both a program and a directory content tracker system. -The program 'git' is just a wrapper to reach the core git programs -(or a potty if you like, as it's not exactly porcelain but still -brings your stuff to the plumbing). +Git is a fast, scalable, distributed revision control system with an +unusually rich command set that provides both high-level operations +and full access to internals. + +See this link:tutorial.html[tutorial] to get started, then see +link:everyday.html[Everyday Git] for a useful minimum set of commands, and +"man git-commandname" for documentation of each command. CVS users may +also want to read link:cvs-migration.html[CVS migration]. OPTIONS ------- --version:: - prints the git suite version that the 'git' program came from. + Prints the git suite version that the 'git' program came from. --help:: - prints the synopsis and a list of available commands. - If a git command is named this option will bring up the - man-page for that command. + Prints the synopsis and a list of the most commonly used + commands. If a git command is named this option will bring up + the man-page for that command. If the option '--all' or '-a' is + given then all available commands are printed. --exec-path:: - path to wherever your core git programs are installed. + Path to wherever your core git programs are installed. This can also be controlled by setting the GIT_EXEC_PATH environment variable. If no path is given 'git' will print the current setting and then exit. -CORE GIT COMMANDS ------------------ -Before reading this cover to cover, you may want to take a look -at the link:tutorial.html[tutorial] document. If you are -migrating from CVS, link:cvs-migration.html[cvs migration] -document may be helpful after you finish the tutorial. -The <> section below contains much useful definition -and clarification info - read that first. After that, if you -are interested in using git to manage (version control) -projects, use link:everyday.html[Everyday GIT] as a guide to the -minimum set of commands you need to know for day-to-day work. +FURTHER DOCUMENTATION +--------------------- -After you get the general feel from the tutorial and this -overview page, you may want to take a look at the -link:howto-index.html[howto] documents. +See the references above to get started using git. The following is +probably more detail than necessary for a first-time user. -If you are writing your own Porcelain, you need to be familiar -with most of the low level commands --- I suggest starting from -gitlink:git-update-index[1] and gitlink:git-read-tree[1]. +The <> section below and the +link:core-tutorial.html[Core tutorial] both provide introductions to the +underlying git architecture. +See also the link:howto-index.html[howto] documents for some useful +examples. -David Greaves -08/05/05 +GIT COMMANDS +------------ -Updated by Junio C Hamano on 2005-05-05 and -further on 2005-12-07 to reflect recent changes. +We divide git into high level ("porcelain") commands and low level +("plumbing") commands. -Commands Overview ------------------ -The git commands can helpfully be split into those that manipulate -the repository, the index and the files in the working tree, those that -interrogate and compare them, and those that moves objects and -references between repositories. +Low-level commands (plumbing) +----------------------------- -In addition, git itself comes with a spartan set of porcelain -commands. They are usable but are not meant to compete with real -Porcelains. +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]. -There are also some ancillary programs that can be viewed as useful -aids for using the core commands but which are unlikely to be used by -SCMs layered over git. +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 ~~~~~~~~~~~~~~~~~~~~~ @@ -132,6 +128,9 @@ 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. @@ -159,6 +158,9 @@ gitlink:git-merge-base[1]:: 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. @@ -211,6 +213,9 @@ gitlink:git-receive-pack[1]:: 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. @@ -230,8 +235,14 @@ gitlink:git-upload-pack[1]:: what are asked for. -Porcelain-ish Commands ----------------------- +High-level commands (porcelain) +------------------------------- + +We separate the porcelain commands into the main commands and some +ancillary user utilities. + +Main porcelain commands +~~~~~~~~~~~~~~~~~~~~~~~ gitlink:git-add[1]:: Add paths to the index. @@ -284,9 +295,6 @@ gitlink:git-merge[1]:: gitlink:git-mv[1]:: Move or rename a file, a directory, or a symlink. -gitlink:git-octopus[1]:: - Merge more than two commits. - gitlink:git-pull[1]:: Fetch from and merge with a remote repository. @@ -299,6 +307,9 @@ gitlink:git-rebase[1]:: gitlink:git-repack[1]:: Pack unpacked objects in a repository. +gitlink:git-rerere[1]:: + Reuse recorded resolution of conflicted merges. + gitlink:git-reset[1]:: Reset current HEAD to the specified state. @@ -311,6 +322,9 @@ gitlink:git-revert[1]:: gitlink:git-shortlog[1]:: Summarizes 'git log' output. +gitlink:git-show[1]:: + Show one commit log and its diff. + gitlink:git-show-branch[1]:: Show branches and their commits. @@ -325,7 +339,7 @@ gitlink:git-whatchanged[1]:: Ancillary Commands ------------------- +~~~~~~~~~~~~~~~~~~ Manipulators: gitlink:git-applypatch[1]:: @@ -340,6 +354,9 @@ gitlink:git-convert-objects[1]:: gitlink:git-cvsimport[1]:: Salvage your data out of another SCM people love to hate. +gitlink:git-cvsexportcommit[1]:: + Export a single commit to a CVS checkout. + gitlink:git-lost-found[1]:: Recover lost refs that luckily have not yet been pruned. @@ -409,7 +426,7 @@ gitlink:git-rev-parse[1]:: gitlink:git-send-email[1]:: Send patch e-mails out of "format-patch --mbox" output. -gitlink:git-symbolic-refs[1]:: +gitlink:git-symbolic-ref[1]:: Read and modify symbolic refs. gitlink:git-stripspace[1]:: @@ -497,16 +514,14 @@ HEAD:: a valid head 'name' (i.e. the contents of `$GIT_DIR/refs/heads/`). -:: - a valid snapshot 'name' - (i.e. the contents of `$GIT_DIR/refs/snap/`). - File/Directory Structure ------------------------ Please see link:repository-layout.html[repository layout] document. +Read link:hooks.html[hooks] for more details about each hook. + Higher level SCMs may provide and manage additional information in the `$GIT_DIR`. @@ -569,18 +584,20 @@ git Diffs Discussion[[Discussion]] ------------------------ -include::../README[] +include::README[] Authors ------- - git's founding father is Linus Torvalds . - The current git nurse is Junio C Hamano . - The git potty was written by Andres Ericsson . - General upbringing is handled by the git-list . +* git's founding father is Linus Torvalds . +* The current git nurse is Junio C Hamano . +* The git potty was written by Andres Ericsson . +* General upbringing is handled by the git-list . Documentation -------------- -Documentation by David Greaves, Junio C Hamano and the git-list . +The documentation for git suite was started by David Greaves +, and later enhanced greatly by the +contributors on the git-list . GIT ---