Git with broken hash generation to generate collisions between object IDs. Don't use this! https://undefinedbehavior.de/posts/commit-vandalism/
Go to file
Junio C Hamano c65dc351f0 t7501: test the right kind of breakage
These tests try to run "git commit" with various "forbidden" combinations
of options and expect the command to fail, but they do so without having
any change added to the index.  We wouldn't be able to catch breakages
that would allow these combinations by mistake with them because the
command will fail with "nothing to commit" anyway.

Make sure we have something added to the index before running the command.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-03-30 11:07:43 -07:00
block-sha1
builtin Merge branch 'maint' 2012-01-12 23:33:39 -08:00
compat Merge branch 'ef/setenv-putenv' into maint 2011-12-28 11:42:24 -08:00
contrib git-completion: workaround zsh COMPREPLY bug 2012-01-26 14:03:51 -08:00
Documentation Git 1.7.9 2012-01-27 11:31:02 -08:00
git_remote_helpers Change check_ref_format() to take a flags argument 2011-10-05 13:45:29 -07:00
git-gui Merge branch 'master' of git://repo.or.cz/git-gui 2011-12-13 16:48:24 -08:00
gitk-git Merge git://ozlabs.org/~paulus/gitk 2011-12-16 22:18:42 -08:00
gitweb Merge branch 'jn/maint-gitweb-grep-fix' 2012-01-16 16:45:56 -08:00
mergetools mergetools: use the correct tool for Beyond Compare 3 on Windows 2011-10-15 20:13:55 -07:00
perl Merge branch 'maint' 2012-01-03 13:48:00 -08:00
po i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
ppc
t t7501: test the right kind of breakage 2012-03-30 11:07:43 -07:00
templates Merge branch 'maint-1.7.6' into maint 2011-10-26 16:09:28 -07:00
vcs-svn Fix a bitwise negation assignment issue spotted by Sun Studio 2011-12-21 10:19:40 -08:00
xdiff Merge branch 'rs/diff-cleanup-records-fix' into maint 2011-10-21 10:49:25 -07:00
.gitattributes git-gui: set whitespace warnings appropriate to this project 2011-11-30 11:35:28 +00:00
.gitignore Merge branch 'tr/cache-tree' 2011-12-19 16:05:20 -08:00
.mailmap
abspath.c Merge branch 'js/maint-add-path-stat-pwd' into maint 2011-08-16 11:41:27 -07:00
aclocal.m4
advice.c advice: Introduce error_resolve_conflict 2011-08-04 15:40:41 -07:00
advice.h advice: Introduce error_resolve_conflict 2011-08-04 15:40:41 -07:00
alias.c
alloc.c
archive-tar.c upload-archive: allow user to turn off filters 2011-06-22 11:12:35 -07:00
archive-zip.c Merge branch 'jk/archive-tar-filter' 2011-07-19 09:45:32 -07:00
archive.c Merge branch 'jk/maint-upload-archive' 2012-01-12 23:34:17 -08:00
archive.h archive: don't let remote clients get unreachable commits 2011-11-21 14:42:25 -08:00
argv-array.c refactor argv_array into generic code 2011-09-14 11:56:36 -07:00
argv-array.h refactor argv_array into generic code 2011-09-14 11:56:36 -07:00
attr.c Merge branch 'maint-1.7.6' into maint-1.7.7 2012-01-11 19:11:00 -08:00
attr.h Rename git_checkattr() to git_check_attr() 2011-08-04 15:53:21 -07:00
base85.c
bisect.c Merge branch 'jk/argv-array' into maint 2011-10-26 16:13:31 -07:00
bisect.h bisect: introduce support for --no-checkout option. 2011-08-04 15:34:32 -07:00
blob.c
blob.h
branch.c Merge branch 'jn/maint-sequencer-fixes' into maint 2011-12-28 11:32:39 -08:00
branch.h Merge branch 'jn/branch-move-to-self' 2011-12-13 22:53:08 -08:00
builtin.h Merge branch 'jk/upload-archive-use-start-command' 2011-12-16 22:33:30 -08:00
bulk-checkin.c bulk-checkin: replace fast-import based implementation 2011-12-01 11:46:09 -08:00
bulk-checkin.h bulk-checkin: replace fast-import based implementation 2011-12-01 11:46:09 -08:00
bundle.c Merge branch 'maint' 2012-01-03 13:48:00 -08:00
bundle.h Merge branch 'jc/unseekable-bundle' 2011-10-21 16:04:32 -07:00
cache-tree.c Refactor cache_tree_update idiom from commit 2011-12-06 14:57:36 -08:00
cache-tree.h Refactor cache_tree_update idiom from commit 2011-12-06 14:57:36 -08:00
cache.h Merge branch 'jk/git-prompt' 2011-12-22 11:27:23 -08:00
check_bindir
check-builtins.sh
check-racy.c
color.c want_color: automatically fallback to color.ui 2011-08-19 15:51:38 -07:00
color.h want_color: automatically fallback to color.ui 2011-08-19 15:51:38 -07:00
combine-diff.c pass struct commit to diff_tree_combined_merge() 2011-12-17 18:22:29 -08:00
command-list.txt Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpages 2011-10-16 11:09:35 -07:00
commit.c Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
commit.h Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
config.c Merge branch 'na/strtoimax' into maint 2011-12-28 11:32:33 -08:00
config.mak.in i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
configure.ac i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
connect.c Merge branch 'jk/fetch-no-tail-match-refs' into maint 2011-12-28 11:32:36 -08:00
connected.c check_everything_connected(): libify 2011-09-09 15:19:02 -07:00
connected.h check_everything_connected(): libify 2011-09-09 15:19:02 -07:00
convert.c Merge branch 'jc/maint-lf-to-crlf-keep-crlf' into maint 2011-12-28 11:42:27 -08:00
convert.h
copy.c
COPYING
credential-cache--daemon.c credentials: add "cache" helper 2011-12-11 23:16:25 -08:00
credential-cache.c credential-cache: ignore "connection refused" errors 2012-01-16 22:15:19 -08:00
credential-store.c credentials: add "store" helper 2011-12-12 16:09:38 -08:00
credential.c credential: use git_prompt instead of git_getpass 2011-12-12 16:09:39 -08:00
credential.h credential: make relevance of http path configurable 2011-12-11 23:16:25 -08:00
csum-file.c csum-file: introduce sha1file_checkpoint 2011-11-30 14:27:59 -08:00
csum-file.h csum-file: introduce sha1file_checkpoint 2011-11-30 14:27:59 -08:00
ctype.c
daemon.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
date.c date.c: Support iso8601 timezone formats 2011-09-12 16:49:14 -07:00
decorate.c
decorate.h
delta.h
diff-delta.c
diff-lib.c diff-index: enable recursive pathspec matching in unpack_trees 2012-01-18 15:44:02 -08:00
diff-no-index.c
diff.c Merge branch 'tr/maint-word-diff-incomplete-line' 2012-01-18 15:16:19 -08:00
diff.h pass struct commit to diff_tree_combined_merge() 2011-12-17 18:22:29 -08:00
diffcore-break.c
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c pickaxe: factor out pickaxe 2011-10-07 15:46:14 -07:00
diffcore-rename.c diffcore-rename.c: avoid set-but-not-used warning 2011-06-01 13:54:17 -07:00
diffcore.h combine-diff: support format_callback 2011-08-20 23:03:06 -07:00
dir.c read_directory_recursive: reduce one indentation level 2011-10-27 11:27:57 -07:00
dir.h rename pathspec_prefix() to common_prefix() and move to dir.[ch] 2011-09-12 14:38:32 -07:00
editor.c
entry.c
environment.c Merge branch 'jc/stream-to-pack' 2011-12-16 22:33:40 -08:00
exec_cmd.c
exec_cmd.h
fast-import.c Appease Sun Studio by renaming "tmpfile" 2011-12-21 10:21:04 -08:00
fetch-pack.h
fixup-builtins
fmt-merge-msg.h fmt-merge-msg: use branch.$name.description 2011-10-07 10:11:47 -07:00
fsck.c fsck: improve committer/author check 2011-08-11 12:21:07 -07:00
fsck.h
generate-cmdlist.sh misc-sh: fix up whitespace in some other .sh files. 2011-08-05 15:04:48 -07:00
gettext.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
gettext.h i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
git-add--interactive.perl
git-am.sh Merge branch 'maint-1.7.7' into maint 2011-12-09 13:33:39 -08:00
git-archimport.perl
git-bisect.sh Merge branch 'js/bisect-no-checkout' into maint 2011-11-01 16:03:35 -07:00
git-compat-util.h Merge branch 'na/strtoimax' into maint 2011-12-28 11:32:33 -08:00
git-cvsexportcommit.perl git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS 2012-01-11 18:04:08 -08:00
git-cvsimport.perl
git-cvsserver.perl use -h for synopsis and --help for manpage consistently 2011-10-05 10:47:10 -07:00
git-difftool--helper.sh git-difftool: allow skipping file by typing 'n' at prompt 2011-10-10 10:21:11 -07:00
git-difftool.perl use -h for synopsis and --help for manpage consistently 2011-10-05 10:47:10 -07:00
git-filter-branch.sh Merge branch 'jk/filter-branch-require-clean-work-tree' into maint 2011-10-15 20:46:38 -07:00
git-instaweb.sh git-instaweb: Check that correct config file exists for (re)start 2011-06-27 09:11:41 +00:00
git-lost-found.sh
git-merge-octopus.sh
git-merge-one-file.sh Merge branch 'js/maint-merge-one-file-osx-expr' into maint 2011-10-21 10:49:25 -07:00
git-merge-resolve.sh
git-mergetool--lib.sh Merge branch 'maint' 2011-09-19 20:46:48 -07:00
git-mergetool.sh Merge branch 'jm/mergetool-pathspec' into maint-1.7.6 2011-10-26 16:12:25 -07:00
git-parse-remote.sh
git-pull.sh Merge branch 'ab/pull-rebase-config' 2011-12-09 13:37:01 -08:00
git-quiltimport.sh
git-rebase--am.sh
git-rebase--interactive.sh Merge branch 'aw/rebase-i-stop-on-failure-to-amend' into maint 2011-12-28 11:32:34 -08:00
git-rebase--merge.sh
git-rebase.sh Merge branch 'jk/pull-rebase-with-work-tree' into maint 2011-11-01 16:11:00 -07:00
git-relink.perl
git-remote-testgit.py (short) documentation for the testgit remote helper 2011-09-01 15:52:02 -07:00
git-repack.sh
git-request-pull.sh request-pull: use the real fork point when preparing the message 2012-01-10 21:51:15 -08:00
git-send-email.perl send-email: multiedit is a boolean config option 2012-01-09 15:15:28 -08:00
git-sh-i18n.sh i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
git-sh-setup.sh use -h for synopsis and --help for manpage consistently 2011-10-05 10:47:10 -07:00
git-stash.sh stash: Don't fail if work dir contains file named 'HEAD' 2012-01-01 01:11:56 -08:00
git-submodule.sh Merge branch 'tc/submodule-clone-name-detection' 2011-10-26 16:16:32 -07:00
git-svn.perl git-svn.perl: close the edit for propedits even with no mods 2011-12-01 14:25:30 -08:00
GIT-VERSION-GEN Git 1.7.9 2012-01-27 11:31:02 -08:00
git-web--browse.sh git-web--browse: avoid the use of eval 2011-10-03 10:47:07 -07:00
git.c Merge branch 'ab/enable-i18n' 2011-12-19 16:06:41 -08:00
git.spec.in gitweb: Add gitweb manpages to 'gitweb' package in git.spec 2011-10-16 11:09:35 -07:00
gpg-interface.c verify_signed_buffer: fix stale comment 2012-01-05 13:02:26 -08:00
gpg-interface.h Split GPG interface into its own helper library 2011-11-04 21:40:25 -07:00
graph.c color: delay auto-color decision until point of use 2011-08-19 15:51:34 -07:00
graph.h
grep.c grep: enable threading with -p and -W using lazy attribute lookup 2011-12-16 15:47:10 -08:00
grep.h grep: enable threading with -p and -W using lazy attribute lookup 2011-12-16 15:47:10 -08:00
hash.c
hash.h
help.c Merge branch 'ms/help-unknown' 2011-07-22 14:43:21 -07:00
help.h
hex.c get_sha1_hex(): do not read past a NUL character 2011-10-05 13:45:16 -07:00
http-backend.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
http-fetch.c Merge branch 'ab/enable-i18n' 2011-12-19 16:06:41 -08:00
http-push.c Merge branch 'ab/enable-i18n' 2011-12-19 16:06:41 -08:00
http-walker.c
http.c Merge branch 'jk/maint-push-over-dav' into maint 2011-12-28 11:32:37 -08:00
http.h Merge branch 'jk/maint-push-over-dav' into maint 2011-12-28 11:32:37 -08:00
ident.c ident: do not retrieve default ident when unnecessary 2011-10-06 11:16:16 -07:00
imap-send.c Merge branch 'jk/git-prompt' 2011-12-22 11:27:23 -08:00
INSTALL INSTALL: warn about recent Fedora breakage 2012-01-26 21:51:29 -08:00
kwset.c sparse: Fix an "Using plain integer as NULL pointer" warning 2011-09-11 14:43:14 -07:00
kwset.h Adapt the kwset code to Git 2011-08-20 22:33:57 -07:00
levenshtein.c
levenshtein.h
LGPL-2.1
list-objects.c tree_entry_interesting(): give meaningful names to return values 2011-10-27 11:38:24 -07:00
list-objects.h list-objects: pass callback data to show_objects() 2011-09-01 15:46:12 -07:00
ll-merge.c Rename git_checkattr() to git_check_attr() 2011-08-04 15:53:21 -07:00
ll-merge.h merge-recursive --patience 2010-08-26 09:20:03 -07:00
lockfile.c
log-tree.c Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
log-tree.h
mailmap.c Merge branch 'ml/mailmap' into maint-1.7.6 2011-12-13 21:12:14 -08:00
mailmap.h
Makefile Merge branch 'na/strtoimax' into maint 2011-12-28 11:32:33 -08:00
match-trees.c
merge-file.c
merge-file.h
merge-recursive.c Merge branch 'tr/cache-tree' 2011-12-19 16:05:20 -08:00
merge-recursive.h merge-recursive: Save D/F conflict filenames instead of unlinking them 2011-08-14 14:19:35 -07:00
name-hash.c name-hash.c: always initialize dir_next pointer 2011-11-01 15:29:18 -07:00
notes-cache.c Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
notes-cache.h
notes-merge.c Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
notes-merge.h Convert commit_tree() to take strbuf as message 2011-12-15 10:46:42 -08:00
notes.c Do not use C++-style comments 2011-08-22 10:07:07 -07:00
notes.h
object.c receive-pack, fetch-pack: reject bogus pack that records objects twice 2011-11-16 22:05:21 -08:00
object.h
pack-check.c fsck: print progress 2011-11-06 20:31:28 -08:00
pack-refs.c Change check_ref_format() to take a flags argument 2011-10-05 13:45:29 -07:00
pack-refs.h
pack-revindex.c
pack-revindex.h
pack-write.c Appease Sun Studio by renaming "tmpfile" 2011-12-21 10:21:04 -08:00
pack.h Merge branch 'jc/stream-to-pack' 2011-12-16 22:33:40 -08:00
pager.c setup_pager: set GIT_PAGER_IN_USE 2011-08-18 14:17:12 -07:00
parse-options-cb.c parseopt: add OPT_NOOP_NOARG 2011-09-28 12:46:21 -07:00
parse-options.c parse-options: deprecate OPT_BOOLEAN 2011-09-27 17:00:04 -07:00
parse-options.h parseopt: add OPT_NOOP_NOARG 2011-09-28 12:46:21 -07:00
patch-delta.c
patch-ids.c
patch-ids.h
path.c Learn to handle gitfiles in enter_repo 2011-10-04 13:30:38 -07:00
pkt-line.c
pkt-line.h
preload-index.c
pretty.c Merge branch 'jc/show-sig' 2012-01-06 12:44:07 -08:00
progress.c
progress.h
prompt.c prompt: use git_terminal_prompt 2011-12-12 16:09:38 -08:00
prompt.h prompt: use git_terminal_prompt 2011-12-12 16:09:38 -08:00
quote.c Merge branch 'jk/argv-array' into maint 2011-10-26 16:13:31 -07:00
quote.h quote: provide sq_dequote_to_argv_array 2011-09-14 11:56:49 -07:00
reachable.c reachable: per-object progress 2011-11-07 22:12:19 -08:00
reachable.h prune: show progress while marking reachable objects 2011-11-07 22:12:19 -08:00
read-cache.c Merge branch 'rs/allocate-cache-entry-individually' 2011-12-09 13:36:56 -08:00
README
reflog-walk.c Merge branch 'jk/pretty-reglog-ent' 2011-12-22 11:27:28 -08:00
reflog-walk.h pretty: give placeholders to reflog identity 2011-12-16 13:00:15 -08:00
refs.c Merge branch 'mh/ref-api' 2011-12-20 13:25:53 -08:00
refs.h resolve_gitlink_ref(): improve docstring 2011-12-12 09:08:53 -08:00
RelNotes Prepare for 1.7.8.4 2012-01-10 14:27:14 -08:00
remote-curl.c Merge branch 'jk/http-push-to-empty' into maint 2011-12-28 11:42:37 -08:00
remote.c Rename resolve_ref() to resolve_ref_unsafe() 2011-12-13 09:39:46 -08:00
remote.h Merge branch 'cn/fetch-prune' 2011-10-26 16:16:29 -07:00
replace_object.c
rerere.c
rerere.h
resolve-undo.c
resolve-undo.h
revision.c log: --show-signature 2011-11-12 22:27:38 -08:00
revision.h log: --show-signature 2011-11-12 22:27:38 -08:00
run-command.c Merge branch 'jk/argv-array' into maint 2011-10-26 16:13:31 -07:00
run-command.h
send-pack.h
sequencer.c revert: stop creating and removing sequencer-old directory 2011-12-12 13:33:53 -08:00
sequencer.h revert: stop creating and removing sequencer-old directory 2011-12-12 13:33:53 -08:00
server-info.c
setup.c Merge branch 'cb/common-prefix-unification' 2011-10-10 15:56:17 -07:00
sh-i18n--envsubst.c Merge branch 'js/i18n-windows' 2011-06-29 17:03:13 -07:00
sha1_file.c Appease Sun Studio by renaming "tmpfile" 2011-12-21 10:21:04 -08:00
sha1_name.c Merge branch 'jc/broken-ref-dwim-fix' 2011-10-21 16:04:36 -07:00
sha1-array.c
sha1-array.h
sha1-lookup.c
sha1-lookup.h
shallow.c
shell.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
shortlog.h
show-index.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
sideband.c
sideband.h
sigchain.c
sigchain.h refactor signal handling for cleanup functions 2009-01-21 22:46:53 -08:00
strbuf.c Merge branch 'jk/credentials' 2011-12-19 16:05:16 -08:00
strbuf.h Merge branch 'jk/credentials' 2011-12-19 16:05:16 -08:00
streaming.c Merge branch 'jc/streaming-filter' 2011-08-01 15:00:29 -07:00
streaming.h
string-list.c string-list: Add API to remove an item from an unsorted list 2011-08-14 14:19:35 -07:00
string-list.h string-list: Add API to remove an item from an unsorted list 2011-08-14 14:19:35 -07:00
submodule.c Merge branch 'jl/submodule-status-failure-report' into maint 2011-12-21 11:42:45 -08:00
submodule.h submodule: Search for merges only at end of recursive merge 2011-10-13 10:18:16 -07:00
symlinks.c
tag.c Split GPG interface into its own helper library 2011-11-04 21:40:25 -07:00
tag.h
tar.h
test-chmtime.c
test-credential.c introduce credentials API 2011-12-11 23:16:24 -08:00
test-ctype.c test-ctype: add test for is_pathspec_magic 2011-10-03 11:44:03 -07:00
test-date.c
test-delta.c
test-dump-cache-tree.c Refactor cache_tree_update idiom from commit 2011-12-06 14:57:36 -08:00
test-genrandom.c
test-index-version.c
test-line-buffer.c
test-match-trees.c
test-mktemp.c
test-obj-pool.c
test-parse-options.c parseopt: add OPT_NOOP_NOARG 2011-09-28 12:46:21 -07:00
test-path-utils.c test-path-utils: Add subcommand "prefix_path" 2011-08-04 15:57:18 -07:00
test-run-command.c
test-scrap-cache-tree.c Add test-scrap-cache-tree 2011-12-06 14:52:18 -08:00
test-sha1.c
test-sha1.sh
test-sigchain.c
test-string-pool.c
test-subprocess.c
test-svn-fe.c
test-treap.c Fix a bitwise negation assignment issue spotted by Sun Studio 2011-12-21 10:19:40 -08:00
thread-utils.c
thread-utils.h
trace.c
transport-helper.c cleanup: use internal memory allocation wrapper functions everywhere 2011-10-06 13:54:32 -07:00
transport.c Merge branch 'maint' 2012-01-04 11:21:42 -08:00
transport.h push: Don't push a repository with unpushed submodules 2011-08-20 23:03:52 -07:00
tree-diff.c use custom rename score during --follow 2011-12-16 12:33:49 -08:00
tree-walk.c Document limited recursion pathspec matching with wildcards 2012-01-14 18:39:04 -08:00
tree-walk.h tree_entry_interesting(): give meaningful names to return values 2011-10-27 11:38:24 -07:00
tree.c tree_entry_interesting(): give meaningful names to return values 2011-10-27 11:38:24 -07:00
tree.h
unimplemented.sh
unix-socket.c unix-socket: do not let close() or chdir() clobber errno during cleanup 2012-01-11 17:37:10 -08:00
unix-socket.h credentials: add "cache" helper 2011-12-11 23:16:25 -08:00
unpack-trees.c tree-walk.c: do not leak internal structure in tree_entry_len() 2011-10-27 11:08:26 -07:00
unpack-trees.h Merge branch 'jc/diff-index-unpack' into maint 2011-10-15 20:46:36 -07:00
upload-pack.c i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
url.c Merge branch 'jk/http-auth' 2011-10-17 21:37:15 -07:00
url.h url: decode buffers that are not NUL-terminated 2011-07-20 11:38:34 -07:00
usage.c error_routine: use parent's stderr if exec fails 2011-07-31 18:27:07 -07:00
userdiff.c Merge branch 'tr/userdiff-c-returns-pointer' into maint 2011-12-21 11:42:45 -08:00
userdiff.h
utf8.c
utf8.h
walker.c Change check_ref_format() to take a flags argument 2011-10-05 13:45:29 -07:00
walker.h
wrap-for-bin.sh i18n: add infrastructure for translating Git with gettext 2011-12-05 20:46:55 -08:00
wrapper.c
write_or_die.c
ws.c Rename git_checkattr() to git_check_attr() 2011-08-04 15:53:21 -07:00
wt-status.c Convert resolve_ref+xstrdup to new resolve_refdup function 2011-12-13 09:26:52 -08:00
wt-status.h
xdiff-interface.c
xdiff-interface.h
zlib.c bulk-checkin: replace fast-import based implementation 2011-12-01 11:46:09 -08:00

////////////////////////////////////////////////////////////////

	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
commandname".

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

Many Git online resources are accessible from http://git-scm.com/
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 git@vger.kernel.org. To subscribe
to the list, send an email with just "subscribe git" in the body to
majordomo@vger.kernel.org. The mailing list archives are available at
http://marc.theaimsgroup.com/?l=git 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.