Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.

tag: v1.6.3-rc3

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 Documentation
Octocat-spinner-32 arm
Octocat-spinner-32 compat
Octocat-spinner-32 contrib
Octocat-spinner-32 git-gui
Octocat-spinner-32 gitk-git
Octocat-spinner-32 gitweb
Octocat-spinner-32 mozilla-sha1
Octocat-spinner-32 perl
Octocat-spinner-32 ppc fix openssl headers conflicting with custom SHA1 implementations October 02, 2008
Octocat-spinner-32 t
Octocat-spinner-32 templates
Octocat-spinner-32 xdiff
Octocat-spinner-32 .gitattributes Define the project whitespace policy February 11, 2008
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .mailmap
Octocat-spinner-32 COPYING Add a COPYING notice, making it explicit that the license is GPLv2. April 11, 2005
Octocat-spinner-32 GIT-VERSION-GEN
Octocat-spinner-32 INSTALL
Octocat-spinner-32 Makefile
Octocat-spinner-32 README
Octocat-spinner-32 RelNotes
Octocat-spinner-32 abspath.c
Octocat-spinner-32 alias.c
Octocat-spinner-32 alloc.c Clean up object creation to use more common code April 16, 2007
Octocat-spinner-32 archive-tar.c
Octocat-spinner-32 archive-zip.c archive: remove unused headers July 19, 2008
Octocat-spinner-32 archive.c
Octocat-spinner-32 archive.h archive: do not read .gitattributes in working directory April 17, 2009
Octocat-spinner-32 attr.c
Octocat-spinner-32 attr.h
Octocat-spinner-32 base85.c decode_85(): fix missing return. May 30, 2007
Octocat-spinner-32 bisect.c
Octocat-spinner-32 bisect.h
Octocat-spinner-32 blob.c Clean up object creation to use more common code April 16, 2007
Octocat-spinner-32 blob.h [PATCH] Anal retentive 'const unsigned char *sha1' June 08, 2005
Octocat-spinner-32 branch.c
Octocat-spinner-32 branch.h Make git-clone respect branch.autosetuprebase March 03, 2009
Octocat-spinner-32 builtin-add.c
Octocat-spinner-32 builtin-annotate.c War on whitespace June 07, 2007
Octocat-spinner-32 builtin-apply.c
Octocat-spinner-32 builtin-archive.c
Octocat-spinner-32 builtin-bisect--helper.c
Octocat-spinner-32 builtin-blame.c
Octocat-spinner-32 builtin-branch.c
Octocat-spinner-32 builtin-bundle.c
Octocat-spinner-32 builtin-cat-file.c
Octocat-spinner-32 builtin-check-attr.c
Octocat-spinner-32 builtin-check-ref-format.c
Octocat-spinner-32 builtin-checkout-index.c
Octocat-spinner-32 builtin-checkout.c
Octocat-spinner-32 builtin-clean.c
Octocat-spinner-32 builtin-clone.c
Octocat-spinner-32 builtin-commit-tree.c
Octocat-spinner-32 builtin-commit.c
Octocat-spinner-32 builtin-config.c
Octocat-spinner-32 builtin-count-objects.c
Octocat-spinner-32 builtin-describe.c
Octocat-spinner-32 builtin-diff-files.c Add cache preload facility November 14, 2008
Octocat-spinner-32 builtin-diff-index.c diff*: fix worktree setup August 28, 2008
Octocat-spinner-32 builtin-diff-tree.c
Octocat-spinner-32 builtin-diff.c
Octocat-spinner-32 builtin-fast-export.c
Octocat-spinner-32 builtin-fetch--tool.c
Octocat-spinner-32 builtin-fetch-pack.c
Octocat-spinner-32 builtin-fetch.c
Octocat-spinner-32 builtin-fmt-merge-msg.c
Octocat-spinner-32 builtin-for-each-ref.c
Octocat-spinner-32 builtin-fsck.c
Octocat-spinner-32 builtin-gc.c
Octocat-spinner-32 builtin-grep.c
Octocat-spinner-32 builtin-help.c
Octocat-spinner-32 builtin-http-fetch.c
Octocat-spinner-32 builtin-init-db.c
Octocat-spinner-32 builtin-log.c
Octocat-spinner-32 builtin-ls-files.c
Octocat-spinner-32 builtin-ls-remote.c
Octocat-spinner-32 builtin-ls-tree.c
Octocat-spinner-32 builtin-mailinfo.c
Octocat-spinner-32 builtin-mailsplit.c
Octocat-spinner-32 builtin-merge-base.c
Octocat-spinner-32 builtin-merge-file.c
Octocat-spinner-32 builtin-merge-ours.c git-merge-ours: make it a builtin. November 22, 2007
Octocat-spinner-32 builtin-merge-recursive.c
Octocat-spinner-32 builtin-merge.c
Octocat-spinner-32 builtin-mv.c
Octocat-spinner-32 builtin-name-rev.c
Octocat-spinner-32 builtin-pack-objects.c
Octocat-spinner-32 builtin-pack-refs.c
Octocat-spinner-32 builtin-prune-packed.c
Octocat-spinner-32 builtin-prune.c
Octocat-spinner-32 builtin-push.c
Octocat-spinner-32 builtin-read-tree.c
Octocat-spinner-32 builtin-receive-pack.c
Octocat-spinner-32 builtin-reflog.c
Octocat-spinner-32 builtin-remote.c
Octocat-spinner-32 builtin-rerere.c
Octocat-spinner-32 builtin-reset.c
Octocat-spinner-32 builtin-rev-list.c
Octocat-spinner-32 builtin-rev-parse.c
Octocat-spinner-32 builtin-revert.c
Octocat-spinner-32 builtin-rm.c
Octocat-spinner-32 builtin-send-pack.c
Octocat-spinner-32 builtin-shortlog.c
Octocat-spinner-32 builtin-show-branch.c
Octocat-spinner-32 builtin-show-ref.c
Octocat-spinner-32 builtin-stripspace.c
Octocat-spinner-32 builtin-symbolic-ref.c
Octocat-spinner-32 builtin-tag.c
Octocat-spinner-32 builtin-tar-tree.c
Octocat-spinner-32 builtin-unpack-objects.c
Octocat-spinner-32 builtin-update-index.c
Octocat-spinner-32 builtin-update-ref.c
Octocat-spinner-32 builtin-upload-archive.c
Octocat-spinner-32 builtin-verify-pack.c
Octocat-spinner-32 builtin-verify-tag.c
Octocat-spinner-32 builtin-write-tree.c
Octocat-spinner-32 builtin.h
Octocat-spinner-32 bundle.c
Octocat-spinner-32 bundle.h Move bundle specific stuff into bundle.[ch] September 19, 2007
Octocat-spinner-32 cache-tree.c
Octocat-spinner-32 cache-tree.h
Octocat-spinner-32 cache.h
Octocat-spinner-32 cherry is built-in, do not ship November 05, 2006
Octocat-spinner-32 check-racy.c ce_match_stat, run_diff_files: use symbolic constants for readability November 10, 2007
Octocat-spinner-32 check_bindir Move all dashed-form commands to libexecdir June 19, 2008
Octocat-spinner-32 color.c Clean up use of ANSI color sequences February 13, 2009
Octocat-spinner-32 color.h
Octocat-spinner-32 combine-diff.c
Octocat-spinner-32 command-list.txt
Octocat-spinner-32 commit.c
Octocat-spinner-32 commit.h
Octocat-spinner-32 config.c
Octocat-spinner-32 connect.c
Octocat-spinner-32 convert.c
Octocat-spinner-32 copy.c copy.c: copy_fd - correctly report write errors April 22, 2008
Octocat-spinner-32 csum-file.c
Octocat-spinner-32 csum-file.h Merge branch 'maint' October 10, 2008
Octocat-spinner-32 ctype.c
Octocat-spinner-32 daemon.c
Octocat-spinner-32 date.c
Octocat-spinner-32 decorate.c
Octocat-spinner-32 decorate.h decorate: allow const objects to be decorated August 20, 2008
Octocat-spinner-32 delta.h Support fetching the memory usage of a delta index July 12, 2007
Octocat-spinner-32 diff-delta.c fix style of a few comments in diff-delta.c December 18, 2007
Octocat-spinner-32 diff-lib.c
Octocat-spinner-32 diff-no-index.c
Octocat-spinner-32 diff.c
Octocat-spinner-32 diff.h
Octocat-spinner-32 diffcore-break.c
Octocat-spinner-32 diffcore-delta.c optimize diffcore-delta by sorting hash entries. October 04, 2007
Octocat-spinner-32 diffcore-order.c Use xmemdupz() in many places. September 18, 2007
Octocat-spinner-32 diffcore-pickaxe.c pickaxe: count regex matches only once March 21, 2009
Octocat-spinner-32 diffcore-rename.c
Octocat-spinner-32 diffcore.h
Octocat-spinner-32 dir.c
Octocat-spinner-32 dir.h
Octocat-spinner-32 editor.c
Octocat-spinner-32 entry.c
Octocat-spinner-32 environment.c
Octocat-spinner-32 exec_cmd.c Merge branch 'js/maint-1.6.0-exec-path-env' into maint April 02, 2009
Octocat-spinner-32 exec_cmd.h Refactor git_set_argv0_path() to git_extract_argv0_path() January 26, 2009
Octocat-spinner-32 fast-import.c
Octocat-spinner-32 fetch-pack.h Teach fetch-pack/upload-pack about --include-tag March 04, 2008
Octocat-spinner-32 fixup-builtins make remove-dashes: apply to scripts and programs as well, not just t… July 11, 2008
Octocat-spinner-32 fsck.c
Octocat-spinner-32 fsck.h
Octocat-spinner-32 avoid selecting synopsis at wrong place November 30, 2008
Octocat-spinner-32 git-add--interactive.perl
Octocat-spinner-32 git-archimport.perl Make usage strings dash-less July 13, 2008
Octocat-spinner-32 git-compat-util.h
Octocat-spinner-32 git-cvsexportcommit.perl
Octocat-spinner-32 git-cvsimport.perl
Octocat-spinner-32 git-cvsserver.perl
Octocat-spinner-32 git-difftool.perl
Octocat-spinner-32 lost-found: use git rev-parse -q December 03, 2008
Octocat-spinner-32 git-merge-one-file: fix longstanding stupid thinko March 18, 2008
Octocat-spinner-32 Convert to use quiet option when available April 22, 2009
Octocat-spinner-32 mergetool--lib: simplify API usage by removing more global variables April 12, 2009
Octocat-spinner-32 git-quiltimport: preserve standard input to be able to read user input February 25, 2009
Octocat-spinner-32 git-relink.perl Make usage strings dash-less July 13, 2008
Octocat-spinner-32 git-send-email.perl
Octocat-spinner-32 git-svn.perl
Octocat-spinner-32 git.c
Octocat-spinner-32 graph.c
Octocat-spinner-32 graph.h
Octocat-spinner-32 grep.c
Octocat-spinner-32 grep.h
Octocat-spinner-32 hash-object.c
Octocat-spinner-32 hash.c Add 'const' where appropriate to index handling functions March 09, 2008
Octocat-spinner-32 hash.h Add 'const' where appropriate to index handling functions March 09, 2008
Octocat-spinner-32 help.c
Octocat-spinner-32 help.h Merge branch 'ar/autospell' September 07, 2008
Octocat-spinner-32 http-push.c
Octocat-spinner-32 http-walker.c
Octocat-spinner-32 http.c
Octocat-spinner-32 http.h
Octocat-spinner-32 ident.c
Octocat-spinner-32 imap-send.c
Octocat-spinner-32 index-pack.c
Octocat-spinner-32 levenshtein.c Fix typos / spelling in comments April 22, 2009
Octocat-spinner-32 levenshtein.h
Octocat-spinner-32 list-objects.c Merge branch 'lt/pack-object-memuse' April 18, 2009
Octocat-spinner-32 list-objects.h Merge branch 'lt/pack-object-memuse' April 18, 2009
Octocat-spinner-32 ll-merge.c
Octocat-spinner-32 ll-merge.h merge-recursive: split low-level merge functions out. February 18, 2008
Octocat-spinner-32 lockfile.c
Octocat-spinner-32 log-tree.c
Octocat-spinner-32 log-tree.h
Octocat-spinner-32 mailmap.c
Octocat-spinner-32 mailmap.h
Octocat-spinner-32 match-trees.c Improved const correctness for strings October 21, 2007
Octocat-spinner-32 merge-file.c
Octocat-spinner-32 merge-index.c
Octocat-spinner-32 merge-recursive.c
Octocat-spinner-32 merge-recursive.h
Octocat-spinner-32 merge-tree.c
Octocat-spinner-32 mktag.c
Octocat-spinner-32 mktree.c
Octocat-spinner-32 name-hash.c Make hash_name_lookup able to do case-independent lookups April 09, 2008
Octocat-spinner-32 object.c
Octocat-spinner-32 object.h
Octocat-spinner-32 pack-check.c
Octocat-spinner-32 pack-redundant.c
Octocat-spinner-32 pack-refs.c
Octocat-spinner-32 pack-refs.h Move pack_refs() and friends into libgit June 19, 2008
Octocat-spinner-32 pack-revindex.c
Octocat-spinner-32 pack-revindex.h discard revindex data when pack list changes August 22, 2008
Octocat-spinner-32 pack-write.c
Octocat-spinner-32 pack.h
Octocat-spinner-32 pager.c
Octocat-spinner-32 parse-options.c
Octocat-spinner-32 parse-options.h
Octocat-spinner-32 patch-delta.c make patch_delta() error cases a bit more verbose December 18, 2006
Octocat-spinner-32 patch-id.c
Octocat-spinner-32 patch-ids.c patch-ids: use the new generic "sha1_pos" function to lookup sha1 April 04, 2009
Octocat-spinner-32 patch-ids.h Refactor patch-id filtering out of git-cherry and git-format-patch. April 11, 2007
Octocat-spinner-32 path.c
Octocat-spinner-32 pkt-line.c Cleanup xread() loops to use read_in_full() May 03, 2008
Octocat-spinner-32 pkt-line.h Fix pkt-line.h to compile with a non-GCC compiler June 26, 2006
Octocat-spinner-32 preload-index.c
Octocat-spinner-32 pretty.c
Octocat-spinner-32 progress.c
Octocat-spinner-32 progress.h nicer display of thin pack completion November 08, 2007
Octocat-spinner-32 quote.c
Octocat-spinner-32 quote.h
Octocat-spinner-32 reachable.c process_{tree,blob}: Remove useless xstrdup calls April 08, 2009
Octocat-spinner-32 reachable.h Move traversal of reachable objects into a separate library. January 06, 2007
Octocat-spinner-32 read-cache.c
Octocat-spinner-32 reflog-walk.c
Octocat-spinner-32 reflog-walk.h
Octocat-spinner-32 refs.c
Octocat-spinner-32 refs.h
Octocat-spinner-32 remote.c
Octocat-spinner-32 remote.h
Octocat-spinner-32 rerere.c
Octocat-spinner-32 rerere.h
Octocat-spinner-32 revision.c
Octocat-spinner-32 revision.h
Octocat-spinner-32 run-command.c
Octocat-spinner-32 run-command.h
Octocat-spinner-32 send-pack.h
Octocat-spinner-32 server-info.c
Octocat-spinner-32 setup.c
Octocat-spinner-32 sha1-lookup.c sha1-lookup: fix up the assertion message April 06, 2009
Octocat-spinner-32 sha1-lookup.h sha1-lookup: add new "sha1_pos" function to efficiently lookup sha1 April 04, 2009
Octocat-spinner-32 sha1_file.c
Octocat-spinner-32 sha1_name.c
Octocat-spinner-32 shallow.c Merge branch 'mk/maint-parse-careful' February 18, 2008
Octocat-spinner-32 shell.c
Octocat-spinner-32 shortlog.h Rename path_list to string_list July 21, 2008
Octocat-spinner-32 show-index.c
Octocat-spinner-32 sideband.c
Octocat-spinner-32 sideband.h recv_sideband: Bands #2 and #3 always go to stderr March 10, 2009
Octocat-spinner-32 sigchain.c refactor signal handling for cleanup functions January 21, 2009
Octocat-spinner-32 sigchain.h refactor signal handling for cleanup functions January 21, 2009
Octocat-spinner-32 strbuf.c
Octocat-spinner-32 strbuf.h
Octocat-spinner-32 string-list.c string-list: new for_each_string_list() function February 27, 2009
Octocat-spinner-32 string-list.h
Octocat-spinner-32 symlinks.c
Octocat-spinner-32 tag.c Merge branch 'mk/maint-parse-careful' March 02, 2008
Octocat-spinner-32 tag.h Be careful when dereferencing tags. November 02, 2005
Octocat-spinner-32 tar.h tar-tree: Introduce write_entry() March 25, 2006
Octocat-spinner-32 test-chmtime.c
Octocat-spinner-32 test-ctype.c Add is_regex_special() January 17, 2009
Octocat-spinner-32 test-date.c simplify inclusion of system header files. December 20, 2006
Octocat-spinner-32 test-delta.c Fix compilation of test-delta May 01, 2007
Octocat-spinner-32 test-dump-cache-tree.c add test-dump-cache-tree in Makefile February 03, 2009
Octocat-spinner-32 test-genrandom.c
Octocat-spinner-32 test-match-trees.c A new merge stragety 'subtree'. April 07, 2007
Octocat-spinner-32 test-parse-options.c
Octocat-spinner-32 test-path-utils.c Introduce the function strip_path_suffix() February 19, 2009
Octocat-spinner-32 test-sha1.c
Octocat-spinner-32 more tr portability test script fixes March 13, 2008
Octocat-spinner-32 test-sigchain.c t0005: use SIGTERM for sigchain test January 30, 2009
Octocat-spinner-32 thread-utils.c pack-objects: Add runtime detection of online CPU's February 23, 2008
Octocat-spinner-32 thread-utils.h pack-objects: Add runtime detection of online CPU's February 23, 2008
Octocat-spinner-32 trace.c trace: Fixed a minor typo in an error message. February 25, 2009
Octocat-spinner-32 transport.c
Octocat-spinner-32 transport.h
Octocat-spinner-32 tree-diff.c
Octocat-spinner-32 tree-walk.c Fix tree-walking compare_entry() in the presense of --prefix March 09, 2008
Octocat-spinner-32 tree-walk.h Make 'traverse_trees()' traverse conflicting DF entries in parallel March 09, 2008
Octocat-spinner-32 tree.c Fix off-by-one in read_tree_recursive April 20, 2009
Octocat-spinner-32 tree.h add context pointer to read_tree_recursive() July 15, 2008
Octocat-spinner-32 Makefile: allow building without perl April 08, 2009
Octocat-spinner-32 unpack-file.c
Octocat-spinner-32 unpack-trees.c
Octocat-spinner-32 unpack-trees.h
Octocat-spinner-32 update-server-info.c
Octocat-spinner-32 upload-pack.c
Octocat-spinner-32 usage.c
Octocat-spinner-32 userdiff.c
Octocat-spinner-32 userdiff.h color-words: make regex configurable via attributes January 17, 2009
Octocat-spinner-32 utf8.c
Octocat-spinner-32 utf8.h
Octocat-spinner-32 var.c
Octocat-spinner-32 walker.c
Octocat-spinner-32 walker.h Make walker.fetch_ref() take a struct ref. April 26, 2008
Octocat-spinner-32 wrapper.c
Octocat-spinner-32 write_or_die.c
Octocat-spinner-32 ws.c
Octocat-spinner-32 wt-status.c
Octocat-spinner-32 wt-status.h
Octocat-spinner-32 xdiff-interface.c
Octocat-spinner-32 xdiff-interface.h

	GIT - the stupid content tracker


"git" can mean anything, depending on your mood.

 - random three-letter combination that is pronounceable, and not
   actually used by any common UNIX command.  The fact that it is a
   mispronunciation of "get" may or may not be relevant.
 - stupid. contemptible and despicable. simple. Take your pick from the
   dictionary of slang.
 - "global information tracker": you're in a good mood, and it actually
   works for you. Angels sing, and a light suddenly fills the room.
 - "goddamn idiotic truckload of sh*t": when it breaks

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.

Git is an Open Source project covered by the GNU General Public License.
It was originally written by Linus Torvalds with help of a group of
hackers around the net. It is currently maintained by Junio C Hamano.

Please read the file INSTALL for installation instructions.

See Documentation/gittutorial.txt to get started, then see
Documentation/everyday.txt for a useful minimum set of commands, and
Documentation/git-commandname.txt for documentation of each command.
If git has been correctly installed, then the tutorial can also be
read with "man gittutorial" or "git help tutorial", and the
documentation of each command with "man git-commandname" or "git help

CVS users may also want to read Documentation/gitcvs-migration.txt
("man gitcvs-migration" or "git help cvs-migration" if git is

Many Git online resources are accessible from
including full documentation and Git related tools.

The user discussion and development of Git take place on the Git
mailing list -- everyone is welcome to post bug reports, feature
requests, comments and patches to To subscribe
to the list, send an email with just "subscribe git" in the body to The mailing list archives are available at and other archival sites.

The messages titled "A note from the maintainer", "What's in
git.git (stable)" and "What's cooking in git.git (topics)" and
the discussion following them on the mailing list give a good
reference for project status, development direction and
remaining tasks.
Something went wrong with that request. Please try again.