Git with broken hash generation to generate collisions between object IDs. Don't use this! https://undefinedbehavior.de/posts/commit-vandalism/
Go to file
Stefan Beller 2a73b3dad0 run-command: do not pass child process data into callbacks
The expected way to pass data into the callback is to pass them via
the customizable callback pointer. The error reporting in
default_{start_failure, task_finished} is not user friendly enough, that
we want to encourage using the child data for such purposes.

Furthermore the struct child data is cleaned by the run-command API,
before we access them in the callbacks, leading to use-after-free
situations.

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-03-01 09:42:01 -08:00
block-sha1 sha1: provide another level of indirection for the SHA-1 functions 2015-11-05 10:35:11 -08:00
builtin submodules: allow parallel fetching, add tests and documentation 2015-12-16 12:06:08 -08:00
compat Merge branch 'ad/sha1-update-chunked' into maint 2015-12-08 14:05:03 -08:00
contrib Merge branch 'as/subtree-with-spaces' into maint 2015-12-11 11:14:11 -08:00
Documentation submodules: allow parallel fetching, add tests and documentation 2015-12-16 12:06:08 -08:00
ewah Merge branch 'es/osx-header-pollutes-mask-macro' into maint 2015-07-15 11:41:24 -07:00
git-gui git-gui 0.20.0 2015-04-18 18:35:48 -07:00
gitk-git Merge git://ozlabs.org/~paulus/gitk 2015-10-30 09:02:27 -07:00
gitweb gitweb: hack around CGI's list-context param() handling 2014-11-18 11:23:10 -08:00
mergetools mergetools: add winmerge as a builtin tool 2015-05-20 13:13:44 -07:00
perl git-svn: improve rebase/mkdirs performance 2015-11-10 01:35:01 +00:00
po Merge https://github.com/vnwildman/gitk 2015-10-30 21:01:55 +11:00
ppc sha1: provide another level of indirection for the SHA-1 functions 2015-11-05 10:35:11 -08:00
refs Merge branch 'sg/lock-file-commit-error' 2015-12-11 10:40:55 -08:00
t submodules: allow parallel fetching, add tests and documentation 2015-12-16 12:06:08 -08:00
templates Merge branch 'nd/multiple-work-trees' 2015-05-11 14:23:39 -07:00
vcs-svn
xdiff git-merge-file: do not add LF at EOF while applying unrelated change 2014-06-30 14:07:58 -07:00
.gitattributes
.gitignore submodule: rewrite module_list shell function in C 2015-09-03 14:12:40 -07:00
.mailmap mailmap: update my entry with new email address 2015-09-16 09:08:48 -07:00
.travis.yml Add Travis CI support 2015-11-28 12:11:12 -05:00
abspath.c abspath: convert absolute_path() to strbuf 2014-08-26 11:06:06 -07:00
aclocal.m4
advice.c merge: grammofix in please-commit-before-merge message 2015-10-02 14:29:56 -07:00
advice.h pull: check if in unresolved merge state 2015-06-18 13:17:16 -07:00
alias.c config: silence warnings for command names with invalid keys 2015-08-24 08:52:23 -07:00
alloc.c alloc: factor out commit index 2014-07-28 10:14:33 -07:00
archive-tar.c archive-tar: use xsnprintf for trivial formatting 2015-09-25 10:18:18 -07:00
archive-zip.c Merge branch 'rs/archive-zip-many' into maint 2015-09-03 19:18:01 -07:00
archive.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
archive.h
argv-array.c argv-array: implement argv_array_pushv() 2015-06-15 12:40:49 -07:00
argv-array.h argv-array: implement argv_array_pushv() 2015-06-15 12:40:49 -07:00
attr.c memoize common git-path "constant" files 2015-08-10 15:37:14 -07:00
attr.h
base85.c
bisect.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
bisect.h bisect: simplify the addition of new bisect terms 2015-08-03 11:42:41 -07:00
blob.c add object_as_type helper for casting objects 2014-07-28 10:14:33 -07:00
blob.h Replace parse_blob() with an explanatory comment 2010-01-18 17:04:02 -08:00
branch.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
branch.h worktree: add top-level worktree.c 2015-10-02 13:07:38 -07:00
builtin.h Merge branch 'sb/submodule-helper' 2015-10-05 12:30:19 -07:00
bulk-checkin.c use xsnprintf for generating git object headers 2015-09-25 10:18:18 -07:00
bulk-checkin.h cleanups: ensure that git-compat-util.h is included first 2014-09-15 12:05:14 -07:00
bundle.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
bundle.h
cache-tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
cache-tree.h cache-tree: introduce write_index_as_tree() 2015-08-04 22:02:11 -07:00
cache.h Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
check_bindir check_bindir: avoid "test <cond> -a/-o <cond>" 2014-06-09 14:47:06 -07:00
check-builtins.sh check-builtins: strip executable suffix $X when enumerating builtins 2015-02-05 12:03:27 -08:00
check-racy.c
color.c color: add color_set helper for copying raw colors 2015-10-05 11:08:05 -07:00
color.h color: add color_set helper for copying raw colors 2015-10-05 11:08:05 -07:00
column.c use child_process_init() to initialize struct child_process variables 2014-10-28 14:56:17 -07:00
column.h
combine-diff.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
command-list.txt Merge branch 'nd/multiple-work-trees' 2015-07-13 14:02:02 -07:00
commit-slab.h Merge branch 'jc/commit-slab' 2015-08-03 11:01:21 -07:00
commit.c Merge branch 'rs/pop-commit' into maint 2015-12-11 11:14:13 -08:00
commit.h Merge branch 'jk/date-mode-format' 2015-08-03 11:01:27 -07:00
config.c Make error message after failing commit_lock_file() less confusing 2015-12-01 18:17:23 -05:00
config.mak.in
config.mak.uname Makefile: drop D_INO_IN_DIRENT build knob 2015-10-05 11:08:06 -07:00
configure.ac Merge branch 'rc/configure-use-libs-when-checking-a-lib' into maint 2015-12-01 17:19:06 -05:00
connect.c get_remote_heads: convert to struct object_id 2015-11-20 08:02:05 -05:00
connect.h
connected.c run-command: introduce CHILD_PROCESS_INIT 2014-08-20 09:53:37 -07:00
connected.h
convert.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
convert.h convert: stream from fd to required clean filter to reduce used address space 2014-08-28 10:25:15 -07:00
copy.c copy.c: make copy_fd() report its status silently 2015-05-19 14:48:54 -07:00
COPYING
credential-cache--daemon.c credential-cache: new option to ignore sighup 2015-11-20 08:02:07 -05:00
credential-cache.c am, credential-cache: add angle brackets to usage string 2015-10-16 10:43:41 -07:00
credential-store.c Make error message after failing commit_lock_file() less confusing 2015-12-01 18:17:23 -05:00
credential.c Merge branch 'jk/credential-quit' 2014-12-22 12:27:20 -08:00
credential.h credential: let helpers tell us to quit 2014-12-04 10:11:12 -08:00
csum-file.c sha1fd_check: die when we cannot open the file 2015-03-19 13:35:15 -07:00
csum-file.h Merge branch 'jk/pack-bitmap' 2014-12-12 14:31:42 -08:00
ctype.c kwset: use unsigned char to store values with high-bit set 2015-03-02 12:32:24 -08:00
daemon.c Merge branch 'rs/daemon-plug-child-leak' into maint 2015-11-05 12:18:17 -08:00
date.c date: make "local" orthogonal to date format 2015-09-03 15:45:26 -07:00
decorate.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
decorate.h
delta.h comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
diff-delta.c
diff-lib.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
diff-no-index.c use strbuf_complete to conditionally append slash 2015-10-05 11:08:06 -07:00
diff.c Merge branch 'tk/sigchain-unnecessary-post-tempfile' 2015-10-29 13:59:18 -07:00
diff.h log: add "log.follow" configuration variable 2015-07-09 10:24:23 -07:00
diffcore-break.c diff -B -M: fix output for "copy and then rewrite" case 2014-10-23 16:17:09 -07:00
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c react to errors in xdi_diff 2015-09-28 14:57:10 -07:00
diffcore-rename.c Merge branch 'jk/diffcore-rename-duplicate' into maint 2015-03-13 22:56:08 -07:00
diffcore.h diff --stat: mark any file larger than core.bigfilethreshold binary 2014-08-18 10:16:45 -07:00
dir.c Merge branch 'dt/name-hash-dir-entry-fix' into maint 2015-11-03 15:32:40 -08:00
dir.h Merge branch 'nd/untracked-cache' 2015-05-26 13:24:46 -07:00
editor.c run-command: introduce CHILD_PROCESS_INIT 2014-08-20 09:53:37 -07:00
entry.c entry.c: convert strcpy to xsnprintf 2015-09-25 10:18:18 -07:00
environment.c Merge branch 'jk/repository-extension' into maint 2015-11-03 15:32:25 -08:00
exec_cmd.c Merge branch 'jk/git-no-more-argv0-path-munging' into maint 2015-05-26 13:49:18 -07:00
exec_cmd.h system_path(): always return free'able memory to the caller 2014-11-30 16:39:47 -08:00
fast-import.c Merge branch 'sg/lock-file-commit-error' 2015-12-11 10:40:55 -08:00
fetch-pack.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
fetch-pack.h
fmt-merge-msg.h
fsck.c Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
fsck.h fsck: git receive-pack: support excluding objects from fsck'ing 2015-06-23 14:27:37 -07:00
generate-cmdlist.sh generate-cmdlist: re-implement as shell script 2015-08-25 11:24:31 -07:00
gettext.c introduce "format" date-mode 2015-06-29 11:39:10 -07:00
gettext.h Merge branch 'ye/http-accept-language' 2015-03-06 15:02:25 -08:00
git-add--interactive.perl Merge branch 'ak/add-i-empty-candidates' into maint 2015-02-24 22:10:42 -08:00
git-archimport.perl git-archimport: use a lowercase "usage:" string 2013-02-24 13:31:06 -08:00
git-bisect.sh bisect: allow setting any user-specified in 'git bisect start' 2015-08-03 11:42:43 -07:00
git-compat-util.h Merge branch 'js/misc-fixes' into maint 2015-11-05 12:18:13 -08:00
git-cvsexportcommit.perl git-cvsexportcommit: use a lowercase "usage:" string 2013-02-24 13:31:07 -08:00
git-cvsimport.perl Merge branch 'cn/cvsimport-perl-update' 2015-06-25 11:08:08 -07:00
git-cvsserver.perl
git-difftool--helper.sh difftool--helper: add explicit exit statement 2014-11-21 11:27:53 -08:00
git-difftool.perl difftool: ignore symbolic links in use_wt_file 2015-10-29 13:43:10 -07:00
git-filter-branch.sh Merge branch 'jk/filter-branch-no-index' 2015-12-04 11:19:10 -08:00
git-instaweb.sh git-instaweb: use @SHELL_PATH@ instead of /bin/sh 2015-03-10 15:10:35 -07: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: detect delete/modechange conflict 2015-10-26 14:49:31 -07:00
git-merge-resolve.sh
git-mergetool--lib.sh mergetool-lib: fix default tool selection 2015-06-19 11:20:52 -07:00
git-mergetool.sh mergetool--lib: set IFS for difftool and mergetool 2015-05-20 13:13:42 -07:00
git-p4.py Merge branch 'maint' 2015-12-01 17:32:38 -05:00
git-parse-remote.sh
git-quiltimport.sh git-quiltimport: add commandline option --series <file> 2015-09-01 11:10:07 -07:00
git-rebase--am.sh rebase: return non-zero error code if format-patch fails 2015-07-08 15:36:42 -07:00
git-rebase--interactive.sh rebase-i-exec: Allow space in SHELL_PATH 2015-11-13 17:51:39 -05:00
git-rebase--merge.sh *.sh: avoid hardcoding $GIT_DIR/hooks/... 2014-12-01 11:00:13 -08:00
git-rebase.sh Merge branch 'jk/rebase-no-autostash' into maint 2015-12-08 14:05:01 -08:00
git-relink.perl
git-remote-testgit.sh transport-helper: do not request symbolic refs to remote helpers 2015-01-21 22:46:59 -08:00
git-request-pull.sh Merge branch 'lt/request-pull' 2014-05-19 10:35:36 -07:00
git-send-email.perl Merge branch 'jk/send-email-complete-aliases' 2015-12-04 11:19:11 -08:00
git-sh-i18n.sh
git-sh-setup.sh Merge branch 'nd/multiple-work-trees' 2015-05-11 14:23:39 -07:00
git-stash.sh Merge branch 'nk/stash-show-config' 2015-10-05 12:30:10 -07:00
git-submodule.sh Sync with 2.6.1 2015-10-05 13:20:08 -07:00
git-svn.perl git-svn: parse authors file more leniently 2015-09-10 17:59:38 +00:00
GIT-VERSION-GEN Git 2.7-rc0 2015-12-10 12:59:37 -08:00
git-web--browse.sh git-web--browse.sh: use the $( ... ) construct for command substitution 2014-04-23 15:17:02 -07:00
git.c Merge branch 'sb/submodule-helper' 2015-10-05 12:30:19 -07:00
git.rc
git.spec.in
gpg-interface.c verify-commit: add option to print raw gpg status information 2015-06-22 14:20:47 -07:00
gpg-interface.h verify-commit: add option to print raw gpg status information 2015-06-22 14:20:47 -07:00
graph.c Merge branch 'rs/graph-simplify' 2014-09-29 12:36:11 -07:00
graph.h
grep.c color: add color_set helper for copying raw colors 2015-10-05 11:08:05 -07:00
grep.h grep: add color.grep.matchcontext and color.grep.matchselected 2014-10-28 10:33:50 -07:00
hashmap.c hashmap: add string interning API 2014-07-07 13:56:38 -07:00
hashmap.h hashmap: add string interning API 2014-07-07 13:56:38 -07:00
help.c Merge branch 'js/sleep-without-select' 2015-06-24 12:21:47 -07:00
help.h
hex.c add reentrant variants of sha1_to_hex and find_unique_abbrev 2015-09-25 10:18:18 -07:00
http-backend.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
http-fetch.c
http-push.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
http-walker.c http-walker: store url in a strbuf 2015-09-25 10:18:18 -07:00
http.c Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
http.h http.c: use CURLOPT_RANGE for range requests 2015-11-02 14:18:06 -08:00
ident.c ident.c: add support for IPv6 2015-11-28 12:20:42 -05:00
imap-send.c Merge branch 'js/imap-send-curl-compilation-fix' 2015-10-30 13:06:58 -07:00
INSTALL git-imap-send: use libcurl for implementation 2014-11-10 09:17:27 -08:00
khash.h use REALLOC_ARRAY for changing the allocation size of arrays 2014-09-18 09:13:42 -07:00
kwset.c kwset: use unsigned char to store values with high-bit set 2015-03-02 12:32:24 -08:00
kwset.h kwset: use unsigned char to store values with high-bit set 2015-03-02 12:32:24 -08:00
levenshtein.c
levenshtein.h
LGPL-2.1
line-log.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
line-log.h line-log.c: make line_log_data_init() static 2015-01-15 11:05:47 -08:00
line-range.c
line-range.h
list-objects.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
list-objects.h
ll-merge.c Merge branch 'jk/war-on-sprintf' 2015-10-20 15:24:01 -07:00
ll-merge.h
lockfile.c lockfile: remove function "hold_lock_file_for_append" 2015-08-28 11:32:01 -07:00
lockfile.h lockfile: remove function "hold_lock_file_for_append" 2015-08-28 11:32:01 -07:00
log-tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
log-tree.h Merge branch 'jn/parse-config-slot' 2014-10-20 12:23:48 -07:00
mailinfo.c mailinfo: fix passing wrong address to git_mailinfo_config 2015-11-01 10:29:40 -08:00
mailinfo.h mailinfo: remove calls to exit() and die() deep in the callchain 2015-10-21 15:59:34 -07:00
mailmap.c mailmap: replace strcpy with xstrdup 2015-09-25 10:18:18 -07:00
mailmap.h
Makefile Merge branch 'dt/refs-backend-pre-vtable' 2015-12-08 14:14:49 -08:00
match-trees.c use xstrfmt to replace xmalloc + sprintf 2014-06-19 15:20:54 -07:00
merge-blobs.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
merge-blobs.h
merge-recursive.c Remove get_object_hash. 2015-11-20 08:02:05 -05: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 Convert struct object to object_id 2015-11-20 08:02:05 -05:00
mergesort.c
mergesort.h mergesort: rename it to llist_mergesort() 2012-04-17 11:07:01 -07:00
name-hash.c name-hash: don't reuse cache_entry in dir_entry 2015-10-21 12:47:38 -07:00
notes-cache.c Merge branch 'jk/commit-buffer-length' 2014-07-02 12:53:02 -07:00
notes-cache.h
notes-merge.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
notes-merge.h notes: extract enum notes_merge_strategy to notes-utils.h 2015-08-17 15:36:23 -07:00
notes-utils.c notes: extract parse_notes_merge_strategy to notes-utils 2015-08-17 15:38:32 -07:00
notes-utils.h notes: extract parse_notes_merge_strategy to notes-utils 2015-08-17 15:38:32 -07:00
notes.c notes: document length of fanout path with a constant 2015-10-05 11:08:05 -07:00
notes.h
object.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
object.h Remove get_object_hash. 2015-11-20 08:02:05 -05:00
pack-bitmap-write.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
pack-bitmap.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
pack-bitmap.h pack-bitmap.c: make pack_bitmap_filename() static 2015-01-15 11:04:10 -08:00
pack-check.c verify_pack: do not ignore return value of verification function 2015-12-01 18:19:35 -05:00
pack-objects.c use REALLOC_ARRAY for changing the allocation size of arrays 2014-09-18 09:13:42 -07:00
pack-objects.h
pack-revindex.c Silence GCC's "cast of pointer to integer of a different size" warning 2015-10-26 13:24:03 -07:00
pack-revindex.h
pack-write.c pack-write: simplify index_pack_lockfile using skip_prefix() and xstrfmt() 2014-09-02 10:37:24 -07:00
pack.h
pager.c Merge branch 'ti/glibc-stdio-mutex-from-signal-handler' into maint 2015-10-16 14:32:41 -07:00
parse-options-cb.c Merge branch 'kn/for-each-tag-branch' 2015-10-05 12:30:03 -07:00
parse-options.c parse-options: allow -h as a short option 2015-11-20 08:02:07 -05:00
parse-options.h parse-options: allow -h as a short option 2015-11-20 08:02:07 -05:00
patch-delta.c
patch-ids.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
patch-ids.h
path.c Merge branch 'dt/refs-backend-pre-vtable' 2015-12-08 14:14:49 -08:00
pathspec.c Merge branch 'maint' 2014-07-21 12:35:39 -07:00
pathspec.h
pkt-line.c pkt-line: show packets in async processes as "sideband" 2015-09-01 15:11:57 -07:00
pkt-line.h comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
preload-index.c cache.h: rename cache_def_free to cache_def_clear 2014-07-13 10:12:37 -07:00
pretty.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
prio-queue.c prio-queue: make output stable with respect to insertion 2014-07-15 11:02:54 -07:00
prio-queue.h prio-queue: make output stable with respect to insertion 2014-07-15 11:02:54 -07:00
progress.c stop_progress_msg: convert sprintf to xsnprintf 2015-09-25 10:18:18 -07:00
progress.h
prompt.c prompt.c: remove git_getpass() nobody uses 2015-01-15 11:02:06 -08:00
prompt.h prompt.c: remove git_getpass() nobody uses 2015-01-15 11:02:06 -08:00
quote.c quote: move comment before sq_quote_buf() 2015-10-07 15:12:01 -07:00
quote.h ls-tree: remove path filtering logic in show_tree 2014-12-01 11:32:34 -08:00
reachable.c Merge branch 'js/gc-with-stale-symref' into maint 2015-10-20 15:22:42 -07:00
reachable.h pack-objects: match prune logic for discarding objects 2014-10-16 10:10:43 -07:00
read-cache.c Merge branch 'dt/name-hash-dir-entry-fix' into maint 2015-11-03 15:32:40 -08:00
README doc: add 'everyday' to 'git help' 2014-10-10 16:02:26 -07:00
ref-filter.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
ref-filter.h branch.c: use 'ref-filter' APIs 2015-09-25 08:54:54 -07:00
reflog-walk.c replace trivial malloc + sprintf / strcpy calls with xstrfmt 2015-09-25 10:18:18 -07:00
reflog-walk.h convert "enum date_mode" into a struct 2015-06-29 11:39:07 -07:00
refs.c Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
refs.h hideRefs: add support for matching full refs 2015-11-05 11:25:02 -08:00
RelNotes Prepare for 2.6.5 2015-12-11 11:17:47 -08:00
remote-curl.c parse_fetch: convert to use struct object_id 2015-11-20 08:02:05 -05:00
remote-testsvn.c refs: move the remaining ref module declarations to refs.h 2015-06-22 13:17:12 -07:00
remote.c remote: convert functions to struct object_id 2015-11-20 08:02:05 -05:00
remote.h ref_newer: convert to use struct object_id 2015-11-20 08:02:05 -05:00
replace_object.c register_replace_ref(): rewrite to take an object_id argument 2015-05-25 12:19:35 -07:00
rerere.c Merge branch 'jc/rerere' 2015-10-05 12:30:05 -07:00
rerere.h Merge branch 'jc/rerere' 2015-10-05 12:30:05 -07:00
resolve-undo.c resolve-undo: be specific what part of the index has changed 2014-06-13 11:49:38 -07:00
resolve-undo.h
revision.c Merge branch 'sn/null-pointer-arith-in-mark-tree-uninteresting' into maint 2015-12-11 11:14:38 -08:00
revision.h convert "enum date_mode" into a struct 2015-06-29 11:39:07 -07:00
run-command.c run-command: do not pass child process data into callbacks 2016-03-01 09:42:01 -08:00
run-command.h run-command: do not pass child process data into callbacks 2016-03-01 09:42:01 -08:00
send-pack.c Convert struct ref to use object_id. 2015-11-20 08:02:05 -05:00
send-pack.h push: support signing pushes iff the server supports it 2015-08-19 12:58:45 -07:00
sequencer.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
sequencer.h Merge branch 'jc/conflict-hint' into cc/interpret-trailers-more 2014-11-10 09:56:39 -08:00
server-info.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
setup.c Merge branch 'mk/submodule-gitdir-path' into maint 2015-11-03 15:32:35 -08:00
sh-i18n--envsubst.c use REALLOC_ARRAY for changing the allocation size of arrays 2014-09-18 09:13:42 -07:00
sha1_file.c Merge branch 'dk/gc-idx-wo-pack' into maint 2015-12-04 11:33:08 -08:00
sha1_name.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
sha1-array.c
sha1-array.h
sha1-lookup.c sha1-lookup: handle duplicates in sha1_pos() 2014-10-01 13:32:19 -07:00
sha1-lookup.h
shallow.c Merge branch 'rs/pop-commit' into maint 2015-12-11 11:14:13 -08:00
shell.c use xstrfmt to replace xmalloc + strcpy/strcat 2014-06-19 15:20:54 -07:00
shortlog.h
show-index.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
sideband.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
sideband.h
sigchain.c sigchain: add command to pop all common signals 2015-12-16 12:06:08 -08:00
sigchain.h sigchain: add command to pop all common signals 2015-12-16 12:06:08 -08:00
split-index.c ewah: add convenient wrapper ewah_serialize_strbuf() 2015-03-12 13:45:16 -07:00
split-index.h split-index: the reading part 2014-06-13 11:49:40 -07:00
strbuf.c strbuf: add strbuf_read_once to read without blocking 2015-12-16 12:06:08 -08:00
strbuf.h strbuf: add strbuf_read_once to read without blocking 2015-12-16 12:06:08 -08:00
streaming.c Merge branch 'sb/plug-streaming-leak' 2015-04-14 11:49:09 -07:00
streaming.h
string-list.c Merge branch 'sb/string-list' 2014-12-22 12:27:30 -08:00
string-list.h Merge branch 'sb/string-list' 2014-12-22 12:27:30 -08:00
submodule-config.c submodule-config: "goto" removal in parse_config() 2015-10-12 12:28:33 -07:00
submodule-config.h submodule: allow erroneous values for the fetchRecurseSubmodules option 2015-08-19 11:43:10 -07:00
submodule.c run-command: do not pass child process data into callbacks 2016-03-01 09:42:01 -08:00
submodule.h submodules: allow parallel fetching, add tests and documentation 2015-12-16 12:06:08 -08:00
symlinks.c symlinks: remove PATH_MAX limitation 2014-07-07 11:22:42 -07:00
tag.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
tag.h gpg-interface: move parse_signature() to where it should be 2014-09-15 13:23:20 -07:00
tar.h
tempfile.c register_tempfile(): new function to handle an existing temporary file 2015-08-10 12:57:14 -07:00
tempfile.h register_tempfile(): new function to handle an existing temporary file 2015-08-10 12:57:14 -07:00
test-chmtime.c comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
test-config.c add tests for git_config_get_string_const() 2014-08-07 11:41:20 -07:00
test-ctype.c
test-date.c convert "enum date_mode" into a struct 2015-06-29 11:39:07 -07:00
test-delta.c
test-dump-cache-tree.c test-dump-cache-tree: avoid overflow of cache-tree name 2015-09-25 10:18:18 -07:00
test-dump-split-index.c commit: don't rewrite shared index unnecessarily 2015-08-31 08:41:07 -07:00
test-dump-untracked-cache.c untracked cache: guard and disable on system changes 2015-03-12 13:45:18 -07:00
test-genrandom.c
test-hashmap.c Merge branch 'js/test-hashmap-squelch-gcc' 2014-12-22 12:27:46 -08:00
test-index-version.c
test-line-buffer.c
test-match-trees.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
test-mergesort.c
test-mktemp.c
test-parse-options.c parse-options: move unsigned long option parsing out of pack-objects.c 2015-06-22 15:07:21 -07:00
test-path-utils.c test-path-utils.c: remove incorrect assumption 2015-10-08 18:03:50 -07:00
test-prio-queue.c
test-read-cache.c
test-regex.c cleanups: ensure that git-compat-util.h is included first 2014-09-15 12:05:14 -07:00
test-revision-walking.c convert "enum date_mode" into a struct 2015-06-29 11:39:07 -07:00
test-run-command.c run-command: do not pass child process data into callbacks 2016-03-01 09:42:01 -08:00
test-scrap-cache-tree.c lockfile.h: extract new header file for the functions in lockfile.c 2014-10-01 13:56:14 -07:00
test-sha1-array.c sha1-array: add test-sha1-array and basic tests 2014-10-01 13:32:10 -07:00
test-sha1.c
test-sha1.sh
test-sigchain.c cleanups: ensure that git-compat-util.h is included first 2014-09-15 12:05:14 -07:00
test-string-list.c
test-submodule-config.c submodule: use new config API for worktree configurations 2015-08-19 11:43:10 -07:00
test-subprocess.c run-command: introduce CHILD_PROCESS_INIT 2014-08-20 09:53:37 -07:00
test-svn-fe.c
test-urlmatch-normalization.c
test-wildmatch.c
thread-utils.c thread-utils.c: detect CPU count on older BSD-like systems 2015-03-10 15:13:28 -07:00
thread-utils.h pack-objects: set number of threads before checking and warning 2014-10-13 12:53:46 -07:00
trace.c trace: use strbuf for quote_crnl output 2015-09-25 10:18:18 -07:00
trace.h pkt-line: support tracing verbatim pack contents 2015-06-16 13:24:22 -07:00
trailer.c Merge branch 'cc/trailers-corner-case-fix' into maint 2015-09-03 19:18:03 -07:00
trailer.h trailer: put all the processing together and print 2014-10-13 13:55:27 -07:00
transport-helper.c push_refs_with_export: convert to struct object_id 2015-11-20 08:02:05 -05:00
transport.c Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
transport.h Convert struct ref to use object_id. 2015-11-20 08:02:05 -05:00
tree-diff.c diff: convert struct combine_diff_path to object_id 2015-03-13 22:43:13 -07:00
tree-walk.c tree-walk: learn get_tree_entry_follow_symlinks 2015-05-20 13:45:49 -07:00
tree-walk.h tree-walk: learn get_tree_entry_follow_symlinks 2015-05-20 13:45:49 -07:00
tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
tree.h Merge branch 'jk/squelch-missing-link-warning-for-unreachable' into maint 2015-06-25 11:02:10 -07:00
unicode_width.h Update of unicode_width.h to Unicode Version 7.0 2014-06-18 10:53:45 -07:00
unimplemented.sh
unix-socket.c Merge branch 'rs/strbuf-getcwd' 2014-09-02 13:28:44 -07:00
unix-socket.h
unpack-trees.c replace trivial malloc + sprintf / strcpy calls with xstrfmt 2015-09-25 10:18:18 -07:00
unpack-trees.h
update_unicode.sh update_unicode.sh: delete the command group 2014-12-22 10:03:37 -08:00
upload-pack.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
url.c use strbuf_complete to conditionally append slash 2015-10-05 11:08:06 -07:00
url.h
urlmatch.c urlmatch.c: make match_urls() static 2015-01-15 11:05:48 -08:00
urlmatch.h urlmatch.c: make match_urls() static 2015-01-15 11:05:48 -08:00
usage.c vreportf: avoid intermediate buffer 2015-08-11 14:29:36 -07:00
userdiff.c userdiff: add support for Fountain documents 2015-07-23 14:44:51 -07:00
userdiff.h
utf8.c utf8: add function to align a string into given strbuf 2015-09-17 10:02:48 -07:00
utf8.h utf8: add function to align a string into given strbuf 2015-09-17 10:02:48 -07:00
varint.c cleanups: ensure that git-compat-util.h is included first 2014-09-15 12:05:14 -07:00
varint.h cleanups: ensure that git-compat-util.h is included first 2014-09-15 12:05:14 -07:00
version.c
version.h include agent identifier in capability string 2012-08-03 13:03:34 -07:00
versioncmp.c versionsort: support reorder prerelease suffixes 2015-02-27 13:38:22 -08:00
walker.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
walker.h http: init and cleanup separately from http-walker 2010-03-02 11:10:36 -08:00
wildmatch.c
wildmatch.h
worktree.c worktree: add details to the worktree struct 2015-10-08 11:57:07 -07:00
worktree.h worktree: add details to the worktree struct 2015-10-08 11:57:07 -07:00
wrap-for-bin.sh test: facilitate debugging Git executables in tests with gdb 2015-10-30 14:02:38 -07:00
wrapper.c xread: poll on non blocking fds 2015-12-16 12:06:08 -08:00
write_or_die.c refs: write packed_refs file using stdio 2014-09-10 10:58:32 -07:00
ws.c
wt-status.c Merge branch 'bc/object-id' 2015-12-10 12:36:13 -08:00
wt-status.h wt-status: move #include "pathspec.h" to the header 2015-08-21 14:49:27 -07:00
xdiff-interface.c xdiff: reject files larger than ~1GB 2015-09-28 14:57:23 -07:00
xdiff-interface.h xdiff: reject files larger than ~1GB 2015-09-28 14:57:23 -07:00
zlib.c zlib: initialize git_zstream in git_deflate_init{,_gzip,_raw} 2015-03-05 15:46:03 -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 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/giteveryday.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.