Git with broken hash generation to generate collisions between object IDs. Don't use this! https://undefinedbehavior.de/posts/commit-vandalism/
Go to file
Jeff King 78d2214eb4 pack-objects: show reused packfile objects in "Counting objects"
When we are sending a pack for push or fetch, we may reuse a
chunk of packfile without even parsing it. The progress
meter then looks like this:

  Reusing existing pack: 3440489, done.
  Counting objects: 3, done.

The first line shows that we are reusing a large chunk of
objects, and then we further count any objects not included
in the reused portion with an actual traversal.

These are all implementation details that the user does not
need to care about. Instead, we can show the reused objects
in the normal "counting..." progress meter (which will
simply go much faster than normal), and then continue to add
to it as we traverse.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-03-17 15:01:27 -07:00
block-sha1 Merge branch 'jk/pack-bitmap' 2014-02-27 14:01:48 -08:00
builtin pack-objects: show reused packfile objects in "Counting objects" 2014-03-17 15:01:27 -07:00
compat Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
contrib Merge branch 'lb/contrib-contacts-looser-diff-parsing' 2014-03-14 14:24:59 -07:00
Documentation Update draft release notes to Git 2.0 2014-03-14 14:27:26 -07:00
ewah ewah: unconditionally ntohll ewah data 2014-02-12 11:21:29 -08:00
git-gui git-gui 0.19.0 2014-01-21 13:16:17 -08:00
gitk-git Merge git://ozlabs.org/~paulus/gitk 2014-01-23 08:50:50 -08:00
gitweb gitweb: Avoid overflowing page body frame with large images 2014-02-20 09:50:14 -08:00
mergetools mergetools/diffmerge: support DiffMerge as a git mergetool 2013-10-13 16:00:57 -07:00
perl git-svn: memoize _rev_list and rebuild 2014-01-23 02:54:26 +00:00
po i18n: proposed command missing leading dash 2014-03-05 22:10:24 +08:00
ppc
t Merge branch 'sg/archive-restrict-remote' 2014-03-14 14:27:03 -07:00
templates sample pre-commit hook: use --bool when retrieving config var 2013-09-24 12:26:49 -07:00
vcs-svn strbuf: introduce starts_with() and ends_with() 2013-12-05 14:12:52 -08:00
xdiff C: have space around && and || operators 2013-10-16 10:26:39 -07:00
.gitattributes
.gitignore Merge branch 'kb/fast-hashmap' 2014-02-27 14:01:09 -08:00
.mailmap .mailmap: switch to Thomas Rast's personal address 2013-10-13 14:28:27 -07:00
abspath.c Merge branch 'ap/path-max' 2014-01-10 10:32:18 -08:00
aclocal.m4
advice.c Merge branch 'jc/push-2.0-default-to-simple' 2014-03-07 15:13:15 -08:00
advice.h Merge branch 'jc/push-2.0-default-to-simple' 2014-03-07 15:13:15 -08:00
alias.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
alloc.c alloc.c: have SP around arithmetic operators 2013-10-16 10:27:26 -07:00
archive-tar.c archive-tar: use parse_config_key when parsing config 2013-01-23 08:41:50 -08:00
archive-zip.c Merge branch 'sb/archive-zip-double-assignment-fix' into maint 2013-07-19 10:40:53 -07:00
archive.c add uploadarchive.allowUnreachable option 2014-02-28 09:55:37 -08:00
archive.h archive: convert to use parse_pathspec 2013-07-15 10:56:07 -07:00
argv-array.c Merge branch 'fa/remote-svn' 2012-10-25 06:42:02 -04:00
argv-array.h Add the LAST_ARG_MUST_BE_NULL macro 2013-07-19 09:26:15 -07:00
attr.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
attr.h
base85.c base85.c: have SP around arithmetic operators 2013-10-16 10:27:26 -07:00
bisect.c Merge branch 'ep/varscope' 2014-02-27 14:01:30 -08:00
bisect.h Move print_commit_list to libgit.a 2012-10-29 03:08:30 -04:00
blob.c
blob.h
branch.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
branch.h
builtin.h builtin/help.c: speed up is_git_command() by checking for builtin commands first 2014-01-06 11:26:31 -08:00
bulk-checkin.c stream_to_pack: xread does not guarantee to read all requested bytes 2013-08-20 11:20:53 -07:00
bulk-checkin.h
bundle.c bundle: use argv-array 2013-11-12 13:32:11 -08:00
bundle.h
cache-tree.c Convert "struct cache_entry *" to "const ..." wherever possible 2013-07-09 09:12:48 -07:00
cache-tree.h Convert "struct cache_entry *" to "const ..." wherever possible 2013-07-09 09:12:48 -07:00
cache.h Merge branch 'mh/replace-refs-variable-rename' 2014-03-14 14:27:06 -07:00
check_bindir
check-builtins.sh
check-racy.c
color.c make color.ui default to 'auto' 2013-06-10 10:55:42 -07:00
color.h
column.c
column.h
combine-diff.c combine-diff: simplify intersect_paths() further 2014-02-24 14:44:57 -08:00
command-list.txt peek-remote: remove deprecated alias of ls-remote 2013-11-12 14:10:22 -08:00
commit-slab.h commit-slab: sizeof() the right type in xrealloc 2013-12-02 12:46:01 -08:00
commit.c commit.c: use skip_prefix() instead of starts_with() 2014-03-04 13:26:42 -08:00
commit.h Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
config.c Merge branch 'ks/config-file-stdin' 2014-03-14 14:24:40 -07:00
config.mak.in Merge branch 'jc/remove-export-from-config-mak-in' 2013-04-01 09:00:02 -07:00
config.mak.uname stop using fnmatch (either native or compat) 2014-02-20 14:16:11 -08:00
configure.ac stop using fnmatch (either native or compat) 2014-02-20 14:16:11 -08:00
connect.c Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
connect.h connect.c: refactor url parsing 2013-12-09 14:54:48 -08:00
connected.c Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
connected.h connected.c: add new variant that runs with --shallow-file 2013-12-10 16:14:18 -08:00
convert.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
convert.h typofix: in-code comments 2013-07-22 16:06:49 -07:00
copy.c
COPYING
credential-cache--daemon.c
credential-cache.c
credential-store.c sparse: Fix mingw_main() argument number/type errors 2013-04-28 12:32:08 -07:00
credential.c credential: convert "url" attribute into its parsed subparts 2012-07-18 13:26:58 -07:00
credential.h git credential fill: output the whole 'struct credential' 2012-06-25 11:56:24 -07:00
csum-file.c Merge branch 'jk/sha1write-void' 2014-01-10 10:33:09 -08:00
csum-file.h Merge branch 'jk/sha1write-void' 2014-01-10 10:33:09 -08:00
ctype.c ctype: support iscntrl, ispunct, isxdigit and isprint 2012-10-15 14:58:16 -07:00
daemon.c daemon: move daemonize() to libgit.a 2014-02-10 10:46:35 -08:00
date.c Merge branch 'jk/commit-dates-parsing-fix' 2014-03-14 14:25:44 -07:00
decorate.c decorate.c: compact table when growing 2013-05-16 11:51:08 -07:00
decorate.h decorate: allow const objects to be decorated 2008-08-20 13:30:49 -07:00
delta.h
diff-delta.c create_delta_index: simplify condition always evaluating to true 2013-08-18 12:56:23 -07:00
diff-lib.c Merge branch 'jc/hold-diff-remove-q-synonym-for-no-deletion' 2014-03-07 15:17:41 -08:00
diff-no-index.c Merge branch 'jc/hold-diff-remove-q-synonym-for-no-deletion' 2014-03-07 15:17:41 -08:00
diff.c Merge branch 'tr/diff-submodule-no-reuse-worktree' 2014-03-14 14:25:20 -07:00
diff.h Merge branch 'jc/hold-diff-remove-q-synonym-for-no-deletion' 2014-03-07 15:17:41 -08:00
diffcore-break.c diffcore-break: don't divide by zero 2013-04-03 12:48:02 -07:00
diffcore-delta.c
diffcore-order.c Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
diffcore-pickaxe.c Merge branch 'rs/pickaxe-simplify' 2013-07-12 12:04:17 -07:00
diffcore-rename.c Merge branch 'nd/i18n-progress' 2014-03-14 14:26:31 -07:00
diffcore.h Merge branch 'ks/combine-diff' 2014-03-05 15:06:26 -08:00
dir.c Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
dir.h pathspec: pass directory indicator to match_pathspec_item() 2014-02-24 14:37:19 -08:00
editor.c editor: use canonicalized absolute path 2013-07-29 12:15:27 -07:00
entry.c checkout_entry(): clarify the use of topath[] parameter 2013-10-24 14:59:39 -07:00
environment.c rename read_replace_refs to check_replace_refs 2014-02-20 14:16:55 -08:00
exec_cmd.c
exec_cmd.h Add the LAST_ARG_MUST_BE_NULL macro 2013-07-19 09:26:15 -07:00
fast-import.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
fetch-pack.c Merge branch 'jk/allow-fetch-onelevel-refname' into maint 2014-02-13 13:38:34 -08:00
fetch-pack.h Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
fmt-merge-msg.h
fsck.c date: check date overflow against time_t 2014-02-24 10:12:58 -08:00
fsck.h
generate-cmdlist.sh
gettext.c gettext.c: detect the vsnprintf bug at runtime 2013-12-04 16:10:51 -08:00
gettext.h Merge branch 'nd/fetch-status-alignment' 2012-09-18 14:35:55 -07:00
git-add--interactive.perl git-add--interactive: warn if module for interactive.singlekey is missing 2014-03-03 14:11:18 -08:00
git-am.sh am: add the --gpg-sign option 2014-02-03 12:12:34 -08:00
git-archimport.perl git-archimport: use a lowercase "usage:" string 2013-02-24 13:31:06 -08:00
git-bisect.sh git-bisect.sh: fix a few style issues 2014-03-03 18:29:34 -08:00
git-compat-util.h Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
git-cvsexportcommit.perl git-cvsexportcommit: use a lowercase "usage:" string 2013-02-24 13:31:07 -08:00
git-cvsimport.perl git-cvsimport: use a lowercase "usage:" string 2013-02-24 13:31:07 -08:00
git-cvsserver.perl Merge branch 'ak/cvsserver-stabilize-use-of-hash-keys' 2013-11-04 14:58:05 -08:00
git-difftool--helper.sh difftool: display the number of files in the diff queue in the prompt 2013-12-06 14:00:27 -08:00
git-difftool.perl difftool: support repositories with .git-files 2014-02-24 09:53:57 -08:00
git-filter-branch.sh Merge branch 'lc/filter-branch-too-many-refs' 2013-10-17 15:55:12 -07:00
git-instaweb.sh git-sh-setup.sh: add variable to use the stuck-long mode 2014-02-03 12:11:10 -08:00
git-merge-octopus.sh merge-octopus: Work around environment issue on Windows 2010-10-01 23:08:46 +01:00
git-merge-one-file.sh Merge branch 'kb/p4merge' 2013-03-26 13:15:24 -07:00
git-merge-resolve.sh
git-mergetool--lib.sh remove #!interpreter line from shell libraries 2013-11-26 14:23:56 -08:00
git-mergetool.sh Merge branch 'al/mergetool-printf-fix' 2013-02-14 10:29:37 -08:00
git-p4.py git p4: fix an error message when "p4 where" fails 2014-01-22 08:06:19 -08:00
git-parse-remote.sh remove #!interpreter line from shell libraries 2013-11-26 14:23:56 -08:00
git-pull.sh Merge branch 'bc/gpg-sign-everywhere' 2014-02-27 14:01:44 -08:00
git-quiltimport.sh git-sh-setup.sh: add variable to use the stuck-long mode 2014-02-03 12:11:10 -08:00
git-rebase--am.sh rebase: add the --gpg-sign option 2014-02-11 14:48:20 -08:00
git-rebase--interactive.sh rebase: add the --gpg-sign option 2014-02-11 14:48:20 -08:00
git-rebase--merge.sh rebase: add the --gpg-sign option 2014-02-11 14:48:20 -08:00
git-rebase.sh rebase: add the --gpg-sign option 2014-02-11 14:48:20 -08:00
git-relink.perl git-relink: use a lowercase "usage:" string 2013-02-24 13:31:06 -08:00
git-remote-testgit.sh transport-helper: add no-private-update capability 2013-09-03 11:57:53 -07:00
git-request-pull.sh git-sh-setup.sh: add variable to use the stuck-long mode 2014-02-03 12:11:10 -08:00
git-send-email.perl Merge branch 'rk/send-email-ssl-cert' into maint 2014-02-13 13:38:19 -08:00
git-sh-i18n.sh remove #!interpreter line from shell libraries 2013-11-26 14:23:56 -08:00
git-sh-setup.sh git-sh-setup.sh: add variable to use the stuck-long mode 2014-02-03 12:11:10 -08:00
git-stash.sh stash: handle specifying stashes with $IFS 2014-01-07 10:51:04 -08:00
git-submodule.sh Merge branch 'jl/doc-submodule-update-checkout' 2014-03-14 14:26:58 -07:00
git-svn.perl git-svn: Warn about changing default for --prefix in Git v2.0 2013-10-12 22:30:53 +00:00
GIT-VERSION-GEN Update draft release notes to Git 2.0 2014-03-14 14:27:26 -07:00
git-web--browse.sh web--browse: Add support for xdg-open 2013-10-30 13:54:15 -07:00
git.c rename read_replace_refs to check_replace_refs 2014-02-20 14:16:55 -08:00
git.rc Makefile: Fix compilation of Windows resource file 2014-01-23 10:00:28 -08:00
git.spec.in
gpg-interface.c Merge branch 'mg/gpg-interface-using-status' into maint 2013-04-03 09:26:27 -07:00
gpg-interface.h merge/pull Check for untrusted good GPG signatures 2013-03-31 22:38:49 -07:00
graph.c graph: fix coloring around octopus merges 2013-10-18 12:48:48 -07:00
graph.h Revert "graph.c: mark private file-scope symbols as static" 2013-03-03 19:43:54 -08:00
grep.c grep: allow to use textconv filters 2013-05-10 10:27:31 -07:00
grep.h grep: allow to use textconv filters 2013-05-10 10:27:31 -07:00
hashmap.c add a hashtable implementation that supports O(1) removal 2013-11-18 13:03:51 -08:00
hashmap.h hashmap.h: use 'unsigned int' for hash-codes everywhere 2014-02-24 15:26:30 -08:00
help.c Merge branch 'rt/help-pretty-prints-cmd-names' 2014-03-14 14:27:00 -07:00
help.h help: add help_unknown_ref() 2013-05-08 15:31:54 -07:00
hex.c
http-backend.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
http-fetch.c
http-push.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
http-walker.c Rename static function fetch_pack() to http_fetch_pack() 2012-09-12 11:46:31 -07:00
http.c Merge branch 'mh/object-code-cleanup' 2014-03-14 14:26:29 -07:00
http.h http: never use curl_easy_perform 2014-02-18 15:50:57 -08:00
ident.c Merge branch 'jk/split-broken-ident' into maint 2013-11-07 14:34:51 -08:00
imap-send.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
INSTALL Typo fix: replacing it's -> its 2013-04-11 17:39:05 -07:00
khash.h pack-bitmap: add support for bitmap indexes 2013-12-30 12:19:22 -08:00
kwset.c typofix: in-code comments 2013-07-22 16:06:49 -07:00
kwset.h
levenshtein.c
levenshtein.h
LGPL-2.1
line-log.c line-log: convert to using diff_tree_sha1() 2014-02-05 10:50:36 -08:00
line-log.h range-set: publish API for re-use by git-blame -L 2013-08-06 14:27:20 -07:00
line-range.c line-range: reject -L line numbers less than 1 2013-08-06 14:48:55 -07:00
line-range.h line-range: teach -L/RE/ to search relative to anchor point 2013-08-06 14:36:34 -07:00
list-objects.c Merge branch 'jk/mark-edges-uninteresting' 2014-01-27 10:45:08 -08:00
list-objects.h list-objects: reduce one argument in mark_edges_uninteresting 2013-08-28 11:54:18 -07:00
ll-merge.c convert some config callbacks to parse_config_key 2013-01-23 08:41:50 -08:00
ll-merge.h
lockfile.c lockfile: fix buffer overflow in path handling 2013-07-07 10:29:28 -07:00
log-tree.c rename read_replace_refs to check_replace_refs 2014-02-20 14:16:55 -08:00
log-tree.h pretty: share code between format_decoration and show_decorations 2013-04-18 16:28:27 -07:00
mailmap.c Merge branch 'jc/strcasecmp-pure-inline' 2013-09-24 23:28:13 -07:00
mailmap.h mailmap: simplify map_user() interface 2013-01-10 12:33:08 -08:00
Makefile Merge branch 'tg/index-v4-format' 2014-03-14 14:26:50 -07:00
match-trees.c match-trees: factor out fill_tree_desc_strict 2013-06-13 14:45:38 -07:00
merge-blobs.c Which merge_file() function do you mean? 2012-12-09 23:05:27 -08:00
merge-blobs.h Which merge_file() function do you mean? 2012-12-09 23:05:27 -08:00
merge-recursive.c Merge branch 'bk/refresh-missing-ok-in-merge-recursive' 2014-02-27 14:01:14 -08:00
merge-recursive.h Move try_merge_command and checkout_fast_forward to libgit.a 2012-10-29 03:08:30 -04:00
merge.c Move try_merge_command and checkout_fast_forward to libgit.a 2012-10-29 03:08:30 -04:00
mergesort.c
mergesort.h
name-hash.c name-hash: retire unused index_name_exists() 2014-02-24 15:26:33 -08:00
notes-cache.c
notes-cache.h
notes-merge.c remove diff_tree_{setup,release}_paths 2013-07-15 10:56:09 -07:00
notes-merge.h Move create_notes_commit() from notes-merge.c into notes-utils.c 2013-06-12 10:38:13 -07:00
notes-utils.c notes-utils: handle boolean notes.rewritemode correctly 2014-02-18 15:51:29 -08:00
notes-utils.h typofix: commit is spelled with two ems 2013-09-04 15:30:03 -07:00
notes.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
notes.h many small typofixes 2013-07-29 12:32:25 -07:00
object.c Document some functions defined in object.c 2014-02-28 13:18:09 -08:00
object.h Document some functions defined in object.c 2014-02-28 13:18:09 -08:00
pack-bitmap-write.c pack-bitmap: implement optional name_hash cache 2013-12-30 12:19:23 -08:00
pack-bitmap.c pack-bitmap: implement optional name_hash cache 2013-12-30 12:19:23 -08:00
pack-bitmap.h pack-bitmap: implement optional name_hash cache 2013-12-30 12:19:23 -08:00
pack-check.c
pack-objects.c pack-objects: refactor the packing list 2013-10-24 15:44:48 -07:00
pack-objects.h pack-objects: implement bitmap writing 2013-12-30 12:19:22 -08:00
pack-revindex.c do not discard revindex when re-preparing packfiles 2014-01-16 14:33:46 -08:00
pack-revindex.h do not discard revindex when re-preparing packfiles 2014-01-16 14:33:46 -08:00
pack-write.c Merge branch 'jk/pack-bitmap' 2014-02-27 14:01:48 -08:00
pack.h pack-objects: name pack files after trailer hash 2013-12-05 15:40:11 -08:00
pager.c Merge branch 'jn/pager-lv-default-env' 2014-01-13 11:33:35 -08:00
parse-options-cb.c prune: introduce OPT_EXPIRY_DATE() and use it 2013-04-25 11:42:10 -07:00
parse-options.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
parse-options.h parse-options: remove OPT_BOOLEAN 2013-12-09 11:24:16 -08:00
patch-delta.c
patch-ids.c diff_setup_done(): return void 2012-08-03 12:11:07 -07:00
patch-ids.h
path.c Merge branch 'jk/config-path-include-fix' 2014-02-27 14:01:25 -08:00
pathspec.c pathspec: convert some match_pathspec_depth() to ce_path_match() 2014-02-24 14:36:52 -08:00
pathspec.h Support pathspec magic :(exclude) and its short form :! 2013-12-06 13:00:39 -08:00
pkt-line.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
pkt-line.h pkt-line: share buffer/descriptor reading implementation 2013-02-24 00:14:15 -08:00
preload-index.c pathspec: convert some match_pathspec_depth() to ce_path_match() 2014-02-24 14:36:52 -08:00
pretty.c Merge branch 'jk/commit-dates-parsing-fix' 2014-03-14 14:25:44 -07:00
prio-queue.c sort-in-topological-order: use prio-queue 2013-06-11 15:15:21 -07:00
prio-queue.h sort-in-topological-order: use prio-queue 2013-06-11 15:15:21 -07:00
progress.c i18n: mark all progress lines for translation 2014-02-24 09:08:37 -08:00
progress.h
prompt.c Revert "prompt: clean up strbuf usage" 2014-01-02 10:21:40 -08:00
prompt.h
quote.c quote: remove sq_quote_print() 2013-07-30 08:13:38 -07:00
quote.h quote: remove sq_quote_print() 2013-07-30 08:13:38 -07:00
reachable.c clear parsed flag when we free tree buffers 2013-06-06 10:29:12 -07:00
reachable.h
read-cache.c Merge branch 'tg/index-v4-format' 2014-03-14 14:26:50 -07:00
README Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
reflog-walk.c Merge branch 'jk/maint-reflog-walk-count-vs-time' into maint 2012-05-14 11:46:16 -07:00
reflog-walk.h Merge branch 'jk/maint-reflog-walk-count-vs-time' into maint 2012-05-14 11:46:16 -07:00
refs.c use wildmatch() directly without fnmatch() wrapper 2014-02-20 14:15:46 -08:00
refs.h Merge branch 'sb/refs-code-cleanup' 2013-11-01 07:38:58 -07:00
RelNotes Start preparing for Git 2.0 2014-03-07 15:22:37 -08:00
remote-curl.c http: never use curl_easy_perform 2014-02-18 15:50:57 -08:00
remote-testsvn.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
remote.c Merge branch 'jk/remote-pushremote-config-reading' 2014-03-14 14:26:05 -07:00
remote.h Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
replace_object.c Merge branch 'mh/replace-refs-variable-rename' 2014-03-14 14:27:06 -07:00
rerere.c pathspec: pass directory indicator to match_pathspec_item() 2014-02-24 14:37:19 -08:00
rerere.h rerere: convert to use parse_pathspec 2013-07-15 10:56:07 -07:00
resolve-undo.c Merge branch 'nd/submodule-pathspec-ending-with-slash' 2014-02-27 14:01:15 -08:00
resolve-undo.h convert unmerge_cache to take struct pathspec 2013-07-15 10:56:08 -07:00
revision.c Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
revision.h Merge branch 'jk/pack-bitmap' 2014-02-27 14:01:48 -08:00
run-command.c run-command: trivial style fixes 2013-10-31 13:48:26 -07:00
run-command.h Add the LAST_ARG_MUST_BE_NULL macro 2013-07-19 09:26:15 -07:00
send-pack.c Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
send-pack.h remote.h: replace struct extra_have_objects with struct sha1_array 2013-12-10 16:14:15 -08:00
sequencer.c cherry-pick, revert: add the --gpg-sign option 2014-01-27 15:15:52 -08:00
sequencer.h cherry-pick, revert: add the --gpg-sign option 2014-01-27 15:15:52 -08:00
server-info.c
setup.c Merge branch 'nd/daemonize-gc' 2014-03-05 15:06:39 -08:00
sh-i18n--envsubst.c
sha1_file.c Merge branch 'mh/object-code-cleanup' 2014-03-14 14:26:29 -07:00
sha1_name.c Merge branch 'jk/interpret-branch-name-fix' 2014-01-27 10:44:21 -08:00
sha1-array.c sha1-array.c: mark a private file-scope symbol as static 2012-09-15 22:58:21 -07:00
sha1-array.h sha1-array.c: mark a private file-scope symbol as static 2012-09-15 22:58:21 -07:00
sha1-lookup.c sha1-lookup: handle duplicate keys with GIT_USE_LOOKUP 2013-08-24 22:31:20 -07:00
sha1-lookup.h
shallow.c Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
shell.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
shortlog.h
show-index.c
sideband.c pkt-line: share buffer/descriptor reading implementation 2013-02-24 00:14:15 -08:00
sideband.h pkt-line: move LARGE_PACKET_MAX definition from sideband 2013-02-20 13:42:22 -08:00
sigchain.c refactor signal handling for cleanup functions 2009-01-21 22:46:53 -08:00
sigchain.h
strbuf.c strbuf: remove prefixcmp() and suffixcmp() 2013-12-05 14:13:56 -08:00
strbuf.h strbuf: style fix -- top opening bracket on a separate line 2014-03-03 12:26:08 -08:00
streaming.c open_istream(): do not dereference NULL in the error case 2014-02-18 16:00:53 -08:00
streaming.h
string-list.c Merge branch 'mh/ceiling' into maint 2013-01-28 11:07:18 -08:00
string-list.h Merge branch 'mh/ceiling' into maint 2013-01-28 11:07:18 -08:00
submodule.c Merge branch 'kb/fast-hashmap' 2014-02-27 14:01:09 -08:00
submodule.h rm: delete .gitmodules entry of submodules removed from the work tree 2013-08-06 14:11:00 -07:00
symlinks.c symlinks.c: mark private file-scope symbols as static 2012-09-15 22:58:21 -07:00
tag.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
tag.h
tar.h
test-chmtime.c Merge branch 'js/test-ln-s-add' 2013-06-20 16:02:18 -07:00
test-ctype.c
test-date.c
test-delta.c tests: use a lowercase "usage:" string 2013-02-24 21:30:10 -08:00
test-dump-cache-tree.c Convert "struct cache_entry *" to "const ..." wherever possible 2013-07-09 09:12:48 -07:00
test-genrandom.c tests: use a lowercase "usage:" string 2013-02-24 21:30:10 -08:00
test-hashmap.c test-hashmap.c: drop unnecessary #includes 2014-02-24 14:33:46 -08:00
test-index-version.c sparse: Fix mingw_main() argument number/type errors 2013-04-28 12:32:08 -07:00
test-line-buffer.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
test-match-trees.c use 'tree-ish' instead of 'treeish' 2013-09-04 15:02:56 -07:00
test-mergesort.c sparse: Fix mingw_main() argument number/type errors 2013-04-28 12:32:08 -07:00
test-mktemp.c
test-parse-options.c sparse: Fix mingw_main() argument number/type errors 2013-04-28 12:32:08 -07:00
test-path-utils.c path-utils test: rename mingw_path function to print_path 2013-10-14 07:32:53 -07:00
test-prio-queue.c prio-queue: priority queue of pointers to structs 2013-06-11 15:15:21 -07:00
test-read-cache.c read-cache: add simple performance test 2013-06-09 17:03:00 -07:00
test-regex.c test-regex: Add a test to check for a bug in the regex routines 2012-09-02 18:57:21 -07:00
test-revision-walking.c
test-run-command.c
test-scrap-cache-tree.c
test-sha1.c test-sha1: add a binary output mode 2013-08-22 16:39:46 -07:00
test-sha1.sh
test-sigchain.c
test-string-list.c replace {pre,suf}fixcmp() with {starts,ends}_with() 2013-12-05 14:13:21 -08:00
test-subprocess.c sparse: Fix mingw_main() argument number/type errors 2013-04-28 12:32:08 -07:00
test-svn-fe.c msvc: test-svn-fe: Fix linker "unresolved external" error 2013-02-25 12:40:34 -08:00
test-urlmatch-normalization.c builtin/config.c: compilation fix 2013-08-09 09:20:38 -07:00
test-wildmatch.c stop using fnmatch (either native or compat) 2014-02-20 14:16:11 -08:00
thread-utils.c mingw: rename WIN32 cpp macro to GIT_WINDOWS_NATIVE 2013-05-08 12:14:35 -07:00
thread-utils.h
trace.c shallow.c: the 8 steps to select new commits for .git/shallow 2013-12-10 16:14:16 -08:00
transport-helper.c Merge branch 'ef/mingw-write' 2014-01-27 10:44:59 -08:00
transport.c Merge branch 'nd/shallow-clone' 2014-01-17 12:21:20 -08:00
transport.h fetch: add --update-shallow to accept refs that update .git/shallow 2013-12-10 16:14:17 -08:00
tree-diff.c tree-diff: convert diff_root_tree_sha1() to just call diff_tree_sha1 with old=NULL 2014-02-05 10:49:07 -08:00
tree-walk.c tree-walk: finally switch over tree descriptors to contain a pre-parsed entry 2014-02-24 14:43:29 -08:00
tree-walk.h tree-walk: finally switch over tree descriptors to contain a pre-parsed entry 2014-02-24 14:43:29 -08:00
tree.c Merge branch 'jk/free-tree-buffer' 2013-09-17 11:37:33 -07:00
tree.h Merge branch 'jk/free-tree-buffer' 2013-09-17 11:37:33 -07:00
unimplemented.sh
unix-socket.c
unix-socket.h
unpack-trees.c Merge branch 'nd/i18n-progress' 2014-03-14 14:26:31 -07:00
unpack-trees.h diff-lib, read-tree, unpack-trees: mark cache_entry array paramters const 2013-06-02 15:31:14 -07:00
upload-pack.c rename read_replace_refs to check_replace_refs 2014-02-20 14:16:55 -08:00
url.c
url.h
urlmatch.c urlmatch.c: recompute pointer after append_normalized_escapes 2013-09-12 15:27:01 -07:00
urlmatch.h config: add generic callback wrapper to parse section.<url>.key 2013-07-31 14:58:42 -07:00
usage.c Merge branch 'jk/a-thread-only-dies-once' into maint 2013-04-26 11:25:59 -07:00
userdiff.c userdiff: update Ada patterns 2014-02-05 10:45:51 -08:00
userdiff.h
utf8.c utf8: use correct type for values in interval table 2014-02-18 15:51:40 -08:00
utf8.h add missing "format" function attributes 2013-07-09 22:23:04 -07:00
varint.c
varint.h
version.c include agent identifier in capability string 2012-08-03 13:03:34 -07:00
version.h include agent identifier in capability string 2012-08-03 13:03:34 -07:00
walker.c clear parsed flag when we free tree buffers 2013-06-06 10:29:12 -07:00
walker.h
wildmatch.c wildmatch: properly fold case everywhere 2013-06-02 14:13:05 -07:00
wildmatch.h wildmatch: support "no FNM_PATHNAME" mode 2013-01-01 15:32:37 -08:00
wrap-for-bin.sh wrap-for-bin: make bin-wrappers chainable 2013-07-08 08:55:34 -07:00
wrapper.c typofixes: fix misspelt comments 2013-11-12 09:24:27 -08:00
write_or_die.c write_or_die: raise SIGPIPE when we get EPIPE 2013-02-20 13:42:21 -08:00
ws.c
wt-status.c pathspec: convert some match_pathspec_depth() to dir_path_match() 2014-02-24 14:37:09 -08:00
wt-status.h commit -v: strip diffs and submodule shortlogs from the commit message 2013-12-05 14:39:11 -08:00
xdiff-interface.c
xdiff-interface.h
zlib.c zlib: fix compilation failures with Sun C Compilaer 2013-04-22 09:49:04 -07: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 version 2 (some parts of it are under different licenses,
compatible with the GPLv2). It was originally written by Linus
Torvalds with help of a group of hackers around the net.

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 (read
Documentation/SubmittingPatches for instructions on patch submission).
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://news.gmane.org/gmane.comp.version-control.git/,
http://marc.info/?l=git and other archival sites.

The maintainer frequently sends the "What's cooking" reports that
list the current status of various development topics to the mailing
list.  The discussion following them give a good reference for
project status, development direction and remaining tasks.