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.

tree: 010b260e6f

Fetching latest commit…

Cannot retrieve the latest commit at this time

block-sha1 msvc: Select the "fast" definition of the {get,put}_be32() macros
git-gui Merge branch 'master' of git://
git_remote_helpers Change check_ref_format() to take a flags argument
gitk-git Merge branch 'pt/gitk'
mergetools mergetools: add a plug-in to support DeltaWalker
ppc fix openssl headers conflicting with custom SHA1 implementations
templates Merge branch 'maint-1.7.6' into maint
.gitattributes .gitattributes: detect 8-space indent in shell scripts
.mailmap .mailmap: unify various old mail addresses of gitster
COPYING Update COPYING with GPLv2 with new FSF address
LGPL-2.1 provide a copy of the LGPLv2.1
README README: point to Documentation/SubmittingPatches
RelNotes Kick off post 1.7.10 cycle
abspath.c Reduce parse-options.o dependencies
aclocal.m4 configure: use AC_LANG_PROGRAM consistently
advice.c push: Provide situational hints for non-fast-forward errors
advice.h push: Provide situational hints for non-fast-forward errors
alias.c split_cmdline: Allow caller to access error string
alloc.c unbreak and eliminate NO_C99_FORMAT
attr.c Merge branch 'maint-1.7.6' into maint-1.7.7
attr.h correct a few doubled-word nits in comments and documentation
base85.c Standardize do { ... } while (0) style
bisect.h rev-list: fix --verify-objects --quiet becoming --objects
blob.c Replace parse_blob() with an explanatory comment
blob.h Replace parse_blob() with an explanatory comment
branch.c checkout: suppress tracking message with "-q"
branch.h checkout: suppress tracking message with "-q"
bulk-checkin.c bulk-checkin: replace fast-import based implementation
bulk-checkin.h bulk-checkin: replace fast-import based implementation
bundle.h Merge branch 'jc/unseekable-bundle'
cache-tree.c Merge branch 'nd/cache-tree-api-refactor'
cache-tree.h cache-tree: update API to take abitrary flags
cache.h cherry is built-in, do not ship
check-racy.c ce_match_stat, run_diff_files: use symbolic constants for readability
check_bindir Move all dashed-form commands to libexecdir
color.c want_color: automatically fallback to color.ui
color.h want_color: automatically fallback to color.ui
combine-diff.c Merge branch 'rs/combine-diff-zero-context-at-the-beginning' into maint
config.c Makefile: introduce CHARSET_LIB to link with -lcharset configure: be more idiomatic
connect.c server_supports(): parse feature list more carefully
connected.c fetch/receive: remove over-pessimistic connectivity check
connected.h check_everything_connected(): libify
convert.c Merge branch 'jb/required-filter'
convert.h teach convert_to_git a "dry run" mode
copy.c preserve mtime of local clone
credential-cache--daemon.c credentials: add "cache" helper
credential-cache.c credential-cache: ignore "connection refused" errors
credential-store.c credentials: add "store" helper
credential.c credential: use git_prompt instead of git_getpass
credential.h credential: make relevance of http path configurable
csum-file.c csum-file: introduce sha1file_checkpoint
csum-file.h csum-file: introduce sha1file_checkpoint
ctype.c Merge branch 'jc/pickaxe-ignore-case'
daemon.c git-daemon: produce output when ready
decorate.c Unify signedness in hashing calls
decorate.h decorate: allow const objects to be decorated
delta.h Fix big left-shifts of unsigned char
diff-delta.c fix >4GiB source delta assertion failure
diff-lib.c diff-index: enable recursive pathspec matching in unpack_trees
diffcore-break.c Add a macro DIFF_QUEUE_CLEAR.
diffcore-delta.c Fix diff -B/--dirstat miscounting of newly added contents
diffcore-order.c Use xmemdupz() in many places.
diffcore-pickaxe.c pickaxe: allow -i to search in patch case-insensitively
diffcore-rename.c teach diffcore-rename to optionally ignore empty content
diffcore.h combine-diff: support format_callback
dir.h remove_dir_recursively(): Add flag for skipping removal of toplevel dir
editor.c editor: use run_command's shell feature
entry.c streaming: make streaming-write-entry to be more reusable
exec_cmd.c run-command: treat inaccessible directories as ENOENT
exec_cmd.h Refactor git_set_argv0_path() to git_extract_argv0_path()
fast-import.c fast-import: tighten parsing of datarefs
fetch-pack.h fetch-pack: new --stdin option to read refs from stdin
fixup-builtins make remove-dashes: apply to scripts and programs as well, not just t…
fmt-merge-msg.h fmt-merge-msg: use branch.$name.description
fsck.h Check the format of more printf-type functions
gettext.c i18n: add infrastructure for translating Git with gettext
gettext.h i18n: add infrastructure for translating Git with gettext
git-add--interactive.perl add--interactive: ignore unmerged entries in patch mode Merge branch 'jc/am-report-3way'
git-archimport.perl perl: use "use warnings" instead of -w Merge branch 'js/bisect-no-checkout' into maint
git-cvsexportcommit.perl git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS
git-cvsimport.perl Merge branch 'gr/cvsimport-alternative-cvspass-location' into maint
git-cvsserver.perl use -h for synopsis and --help for manpage consistently
git-difftool.perl Merge branch 'jk/filter-branch-require-clean-work-tree' into maint git-instaweb: Check that correct config file exists for (re)start lost-found: use git rev-parse -q merge-octopus: Work around environment issue on Windows Merge branch 'js/maint-merge-one-file-osx-expr' into maint Convert to use quiet option when available Merge branch 'maint' mergetool: Provide an empty file when needed Make git-{pull,rebase} message without tracking information friendlier Make git-{pull,rebase} message without tracking information friendlier git-quiltimport: preserve standard input to be able to read user input git-rebase--am: remove unnecessary --3way option rebase -m: only call "notes copy" when rewritten exists and is non-empty
git-relink.perl Merge branch 'ab/require-perl-5.8' into maint Merge branch 'tr/maint-git-repack-tmpfile' into maint request-pull: explicitly ask tags/$name to be pulled
git-send-email.perl send-email: multiedit is a boolean config option i18n: fix auto detection of gettext scheme for shell scripts stash: use eval_gettextln correctly
git-svn.perl git-web--browse: avoid the use of eval
git.c spec: add missing build dependency
gpg-interface.h Split GPG interface into its own helper library
graph.h Enable custom schemes for column colors in the graph API
hash.c for_each_hash: allow passing a 'void *data' pointer to callback
hash.h for_each_hash: allow passing a 'void *data' pointer to callback
help.h builtin.h: Move two functions definitions to help.h.
hex.c get_sha1_hex(): do not read past a NUL character
http-backend.c http-backend: respect existing GIT_COMMITTER_* variables
http-fetch.c Merge branch 'ab/enable-i18n'
http-walker.c http: make curl callbacks match contracts from curl header
http.h correct spelling: an URL -> a URL
kwset.c sparse: Fix an "Using plain integer as NULL pointer" warning
kwset.h Adapt the kwset code to Git
levenshtein.c Fix typos / spelling in comments
levenshtein.h Typofixes outside documentation area
list-objects.c tree_entry_interesting(): give meaningful names to return values
list-objects.h list-objects: pass callback data to show_objects()
ll-merge.h merge-recursive --patience
lockfile.c Name make_*_path functions more accurately
log-tree.h Allow customizable commit decorations colors
mailmap.c mailmap: always return a plain mail address from map_user()
mailmap.h mailmap.c: remove unused function
match-trees.c Make "subtree" part more orthogonal to the rest of merge-recursive.
merge-file.c sparse: Fix an "symbol 'merge_file' not decared" warning
merge-file.h sparse: Fix an "symbol 'merge_file' not decared" warning
merge-recursive.c Merge branch 'jc/diff-algo-cleanup' into maint
merge-recursive.h merge-recursive: Save D/F conflict filenames instead of unlinking them
mergesort.c mergesort: rename it to llist_mergesort()
mergesort.h mergesort: rename it to llist_mergesort()
name-hash.c name-hash.c: always initialize dir_next pointer
notes-cache.c Merge branch 'jc/show-sig'
notes-cache.h introduce notes-cache interface
notes-merge.c notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the us…
notes-merge.h Convert commit_tree() to take strbuf as message
notes.c Do not use C++-style comments
notes.h notes: refactor display notes default handling
object.h Teach revision walking machinery to walk multiple times sequencially
pack-check.c fsck: print progress
pack-refs.c pack_refs(): remove redundant check
pack-refs.h Move pack_refs() and friends into libgit
pack-revindex.c janitor: useless checks before free
pack-revindex.h discard revindex data when pack list changes
pack-write.c Appease Sun Studio by renaming "tmpfile"
pack.h Merge branch 'jc/stream-to-pack'
parse-options-cb.c parseopt: add OPT_NOOP_NOARG
patch-delta.c compat: helper for detecting unsigned overflow
patch-ids.c patch-ids: use the new generic "sha1_pos" function to lookup sha1
patch-ids.h Refactor patch-id filtering out of git-cherry and git-format-patch.
path.c standardize and improve lookup rules for external local repos
pkt-line.c sparse: Fix errors and silence warnings
pkt-line.h pkt-line: Add strbuf based functions
preload-index.c Convert ce_path_match() to use struct pathspec
progress.c change throughput display units with fast links
progress.h nicer display of thin pack completion
prompt.c prompt: fall back to terminal if askpass fails
prompt.h prompt: use git_terminal_prompt
quote.c Merge branch 'jk/argv-array' into maint
quote.h quote: provide sq_dequote_to_argv_array
reachable.c reachable: per-object progress
reachable.h prune: show progress while marking reachable objects
refs.h refs: store references hierarchically
replace_object.c inline lookup_replace_object() calls
rerere.c Merge branch 'maint'
rerere.h rerere: libify rerere_clear() and rerere_gc()
resolve-undo.c Convert the users of for_each_string_list to for_each_string_list_ite…
resolve-undo.h build: make code "-Wpointer-arith" clean
run-command.c Merge branch 'js/spawn-via-shell-path-fix'
run-command.h dashed externals: kill children on exit
send-pack.h push: pass --progress down to git-pack-objects
server-info.c update-server-info: Shorten read_pack_info_file()
sh-i18n--envsubst.c Merge branch 'js/i18n-windows'
sha1-array.c receive-pack: eliminate duplicate .have refs
sha1-array.h receive-pack: eliminate duplicate .have refs
sha1-lookup.c sha1-lookup: fix up the assertion message
sha1-lookup.h sha1-lookup: add new "sha1_pos" function to efficiently lookup sha1
sha1_name.c i18n: mark @{upstream} error messages for translation
shallow.c object.h: Add OBJECT_ARRAY_INIT macro and make use of it.
shell.c i18n: add infrastructure for translating Git with gettext
shortlog.h pretty: Respect --abbrev option
show-index.c i18n: add infrastructure for translating Git with gettext
sideband.c Smart push over HTTP: client side
sideband.h recv_sideband: Bands #2 and #3 always go to stderr
sigchain.c refactor signal handling for cleanup functions
sigchain.h refactor signal handling for cleanup functions
string-list.c string-list: Add API to remove an item from an unsorted list
string-list.h string-list: Add API to remove an item from an unsorted list
submodule.h Merge branch 'hv/submodule-recurse-push'
symlinks.c Add threaded versions of functions in symlinks.c.
tag.c upload-pack: avoid parsing tag destinations
tag.h upload-pack: avoid parsing tag destinations
tar.h tar-tree: Introduce write_entry()
test-chmtime.c Typofixes outside documentation area
test-credential.c introduce credentials API
test-ctype.c test-ctype: add test for is_pathspec_magic
test-date.c test-date: fix sscanf type conversion
test-delta.c Nicolas Pitre has a new email address
test-dump-cache-tree.c cache-tree: update API to take abitrary flags
test-genrandom.c test-genrandom: ensure stdout is set to _O_BINARY on Windows
test-index-version.c Add test-index-version
test-line-buffer.c vcs-svn: remove buffer_read_string
test-match-trees.c A new merge stragety 'subtree'.
test-mergesort.c mergesort: rename it to llist_mergesort()
test-mktemp.c Improve error messages when temporary file creation fails
test-parse-options.c test-parse-options: convert to OPT_BOOL()
test-path-utils.c test-path-utils: Add subcommand "prefix_path"
test-revision-walking.c Teach revision walking machinery to walk multiple times sequencially
test-run-command.c tests: check error message from run_command
test-scrap-cache-tree.c Add test-scrap-cache-tree
test-sha1.c Convert existing die(..., strerror(errno)) to die_errno() more tr portability test script fixes
test-sigchain.c t0005: use SIGTERM for sigchain test
test-subprocess.c test-subprocess: fix segfault without arguments
test-svn-fe.c vcs-svn: cap number of bytes read from sliding view
thread-utils.c Fix sparse warnings
thread-utils.h thread-utils.h: simplify the inclusion
trace.c Fix sparse warnings
transport.c Merge branch 'hv/submodule-recurse-push'
transport.h Merge branch 'hv/submodule-recurse-push'
tree-diff.c use custom rename score during --follow
tree-walk.c Document limited recursion pathspec matching with wildcards
tree-walk.h tree_entry_interesting(): give meaningful names to return values
tree.c tree_entry_interesting(): give meaningful names to return values
tree.h Convert read_tree{,_recursive} to support struct pathspec Makefile: allow building without perl
unix-socket.c unix-socket: do not let close() or chdir() clobber errno during cleanup
unix-socket.h credentials: add "cache" helper
unpack-trees.h Merge branch 'jc/diff-index-unpack' into maint
upload-pack.c Merge branch 'jk/parse-object-cached'
url.c Merge branch 'jk/http-auth'
url.h url: decode buffers that are not NUL-terminated
usage.c error_routine: use parent's stderr if exec fails
userdiff.c drop odd return value semantics from userdiff_config
userdiff.h refactor get_textconv to not require diff_filespec
utf8.c strbuf: add fixed-length version of add_wrapped_text
utf8.h strbuf: add fixed-length version of add_wrapped_text
walker.c Change check_ref_format() to take a flags argument
walker.h http: init and cleanup separately from http-walker i18n: add infrastructure for translating Git with gettext
write_or_die.c Convert existing die(..., strerror(errno)) to die_errno()
ws.c Rename git_checkattr() to git_check_attr()
wt-status.h Merge branch 'jn/status-translatable'
xdiff-interface.c add, merge, diff: do not use strcasecmp to compare config variable names
xdiff-interface.h Merge branch 'maint-1.7.0' into maint
zlib.c bulk-checkin: replace fast-import based implementation

	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 (read
Documentation/SubmittingPatches for instructions on patch submission).
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

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.