Git with broken hash generation to generate collisions between object IDs. Don't use this! https://undefinedbehavior.de/posts/commit-vandalism/
Go to file
Thomas Gummerer 8a2cd3f512 stash: remove the stash.useBuiltin setting
Remove the stash.useBuiltin setting which was added as an escape hatch
to disable the builtin version of stash first released with Git 2.22.

Carrying the legacy version is a maintenance burden, and has in fact
become out of date failing a test since the 2.23 release, without
anyone noticing until now.  So users would be getting a hint to fall
back to a potentially buggy version of the tool.

We used to shell out to git config to get the useBuiltin configuration
to avoid changing any global state before spawning legacy-stash.
However that is no longer necessary, so just use the 'git_config'
function to get the setting instead.

Similar to what we've done in d03ebd411c ("rebase: remove the
rebase.useBuiltin setting", 2019-03-18), where we remove the
corresponding setting for rebase, we leave the documentation in place,
so people can refer back to it when searching for it online, and so we
can refer to it in the commit message.

Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2020-03-05 12:50:28 -08:00
.github point pull requesters to GitGitGadget 2019-03-13 11:07:50 +09:00
block-sha1
builtin stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
ci Merge branch 'js/ci-squelch-doc-warning' 2020-02-12 12:41:39 -08:00
compat Merge branch 'js/mingw-open-in-gdb' 2020-02-17 13:22:18 -08:00
contrib Merge branch 'mt/sparse-checkout-doc-update' 2020-02-05 14:35:00 -08:00
Documentation stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
ewah ewah/bitmap: introduce bitmap_word_alloc() 2020-01-23 10:51:50 -08:00
git-gui Merge https://github.com/prati0100/git-gui 2020-01-08 11:18:06 -08:00
gitk-git Merge gitk to pick up emergency build fix 2019-09-17 14:59:18 -07:00
gitweb Merge branch 'do/gitweb-typofix-in-comments' 2020-01-08 12:44:11 -08:00
mergetools mergetools: add support for smerge (Sublime Merge) 2019-04-04 18:21:25 +09:00
negotiator
perl Fix spelling errors in documentation outside of Documentation/ 2019-11-07 13:42:00 +09:00
po l10n: zh_CN: for git v2.25.0 l10n round 1 2020-01-12 19:22:02 +08:00
ppc *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
refs C: use skip_prefix() to avoid hardcoded string length 2020-01-31 13:03:45 -08:00
sha1collisiondetection@855827c583 sha1dc: update from upstream 2019-05-14 16:45:01 +09:00
sha1dc Merge branch 'jk/lore-is-the-archive' 2019-12-06 15:09:23 -08:00
sha256 sha256: add an SHA-256 implementation using libgcrypt 2018-11-14 16:54:53 +09:00
t stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
templates Merge branch 'kw/fsmonitor-watchman-racefix' 2020-02-14 12:54:20 -08:00
trace2 Merge branch 'en/doc-typofix' 2019-12-01 09:04:35 -08:00
vcs-svn *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
xdiff Merge branch 'rs/xdiff-ignore-ws-w-func-context' 2019-12-16 13:08:32 -08:00
.cirrus.yml CI: add FreeBSD CI support via Cirrus-CI 2019-12-20 12:09:12 -08:00
.clang-format clang-format: use git grep to generate the ForEachMacros list 2019-06-04 14:50:40 -07:00
.editorconfig editorconfig: indent text files with tabs 2020-01-06 08:46:32 -08:00
.gitattributes Fix build with core.autocrlf=true 2019-09-24 19:48:27 +05:30
.gitignore stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
.gitmodules
.mailmap Merge branch 'ds/sparse-cone' into maint 2020-02-14 12:42:29 -08:00
.travis.yml travis-ci: build with GCC 4.8 as well 2019-07-19 14:06:01 -07:00
.tsan-suppressions replace-object: make replace operations thread-safe 2020-01-17 13:52:14 -08:00
abspath.c real_path: clarify return value ownership 2017-09-27 09:13:47 +09:00
aclocal.m4
add-interactive.c Merge branch 'js/add-p-leftover-bits' 2020-02-05 14:34:58 -08:00
add-interactive.h built-in add -p: respect the interactive.singlekey config setting 2020-01-15 12:06:17 -08:00
add-patch.c built-in add -p: respect the interactive.singlekey config setting 2020-01-15 12:06:17 -08:00
advice.c add: change advice config variables used by the add API 2020-02-06 11:08:00 -08:00
advice.h add: change advice config variables used by the add API 2020-02-06 11:08:00 -08:00
alias.c
alias.h
alloc.c object_as_type: initialize commit-graph-related fields of 'struct commit' 2019-01-27 16:55:57 -08:00
alloc.h object_as_type: initialize commit-graph-related fields of 'struct commit' 2019-01-27 16:55:57 -08:00
apply.c sha1-file: pass git_hash_algo to hash_object_file() 2020-01-31 10:45:39 -08:00
apply.h apply.h: include missing header 2019-09-28 14:04:16 +09:00
archive-tar.c streaming: allow open_istream() to handle any repo 2020-01-31 10:45:39 -08:00
archive-zip.c streaming: allow open_istream() to handle any repo 2020-01-31 10:45:39 -08:00
archive.c tree-walk.c: remove the_repo from get_tree_entry() 2019-06-27 12:45:17 -07:00
archive.h Merge branch 'dl/no-extern-in-func-decl' 2019-05-13 23:50:32 +09:00
argv-array.c argv-array: add space after while 2019-11-20 13:29:02 +09:00
argv-array.h argv-array: move doc to argv-array.h 2019-11-18 15:21:29 +09:00
attr.c attr: move doc to attr.h 2019-11-18 15:21:28 +09:00
attr.h attr: move doc to attr.h 2019-11-18 15:21:28 +09:00
azure-pipelines.yml Merge branch 'js/azure-pipelines-msvc' 2019-10-23 11:06:46 +09:00
banned.h banned.h: fix vsprintf()'s ban message 2019-08-26 10:32:45 -07:00
base85.c
bisect.c bisect: switch to using the_hash_algo 2019-08-19 15:04:58 -07:00
bisect.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
blame.c Merge branch 'ew/hashmap' 2019-10-15 13:48:02 +09:00
blame.h Merge branch 'br/blame-ignore' 2019-07-19 11:30:20 -07:00
blob.c object: convert create_object() to use object_id 2019-06-20 10:20:51 -07:00
blob.h
branch.c Merge branch 'nd/switch-and-restore' 2019-07-09 15:25:44 -07:00
branch.h Merge branch 'nd/switch-and-restore' 2019-07-09 15:25:44 -07:00
builtin.h sparse-checkout: create builtin with 'list' subcommand 2019-11-22 16:11:43 +09:00
bulk-checkin.c bulk-checkin: zero-initialize hashfile_checkpoint 2019-09-06 11:03:39 -07:00
bulk-checkin.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
bundle.c bundle-create: progress output control 2019-11-11 11:46:28 +09:00
bundle.h bundle-create: progress output control 2019-11-11 11:46:28 +09:00
cache-tree.c sha1-file: pass git_hash_algo to hash_object_file() 2020-01-31 10:45:39 -08:00
cache-tree.h cache-tree: share code between functions writing an index as a tree 2019-08-19 10:08:03 -07:00
cache.h Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
chdir-notify.c
chdir-notify.h
check_bindir
check-builtins.sh
checkout.c
checkout.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
CODE_OF_CONDUCT.md CODE_OF_CONDUCT: mention individual project-leader emails 2019-10-10 10:41:46 +09:00
color.c color.c: alias RGB colors 8-15 to aixterm colors 2020-02-11 11:19:00 -08:00
color.h
column.c column: use utf8_strnwidth() to strip out ANSI color escapes 2019-10-15 10:54:15 +09:00
column.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
combine-diff.c combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo 2019-08-19 15:04:58 -07:00
command-list.txt Merge branch 'ds/sparse-cone' 2019-12-25 11:21:58 -08:00
commit-graph.c commit-graph.h: use odb in 'load_commit_graph_one_fd_st' 2020-02-04 11:36:51 -08:00
commit-graph.h commit-graph.h: use odb in 'load_commit_graph_one_fd_st' 2020-02-04 11:36:51 -08:00
commit-reach.c commit-graph: fix writing first commit-graph during fetch 2019-10-25 11:19:16 +09:00
commit-reach.h Merge branch 'sb/more-repo-in-api' 2019-02-05 14:26:09 -08:00
commit-slab-decl.h
commit-slab-impl.h
commit-slab.h
commit.c Merge branch 'rs/strbuf-insertstr' 2020-02-17 13:22:17 -08:00
commit.h gpg-interface: add minTrustLevel as a configuration option 2020-01-15 14:06:06 -08:00
common-main.c common-main: delay trace2 initialization 2019-08-06 13:09:01 -07:00
config.c Merge branch 'bw/remote-rename-update-config' 2020-02-25 11:18:32 -08:00
config.h config: provide access to the current line number 2020-02-10 10:52:10 -08:00
config.mak.dev Makefile: allow for combining DEVELOPER=1 and CFLAGS="..." 2019-02-24 07:35:07 -08:00
config.mak.in
config.mak.uname Sync with 2.23.1 2019-12-06 16:31:39 +01:00
configure.ac Merge branch 'dd/sequencer-utf8' 2019-12-01 09:04:36 -08:00
connect.c Sync with 2.23.1 2019-12-06 16:31:39 +01:00
connect.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
connected.c connected: verify promisor-ness of partial clone 2020-01-30 10:55:31 -08:00
connected.h connected: verify promisor-ness of partial clone 2020-01-30 10:55:31 -08:00
convert.c Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
convert.h am: reload .gitattributes after patching it 2019-09-03 15:16:18 -07:00
copy.c
COPYING
credential-cache--daemon.c style: the opening '{' of a function is in a separate line 2018-12-10 15:41:09 +09:00
credential-cache.c
credential-store.c strbuf: give URL-encoding API a char predicate fn 2019-06-28 08:41:53 -07:00
credential.c
credential.h doc: move credential helper info into gitcredentials(7) 2020-02-14 14:43:16 -08:00
csum-file.c
csum-file.h csum-file: introduce hashfile_total() 2020-01-23 10:51:50 -08:00
ctype.c
daemon.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
date.c date.c: switch to reentrant {gm,local}time_r 2019-11-30 13:50:48 -08:00
decorate.c hashmap: convert sha1hash() to oidhash() 2019-06-20 10:44:22 -07:00
decorate.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
delta-islands.c Merge branch 'jk/oidhash' 2019-07-09 15:25:43 -07:00
delta-islands.h delta-islands: respect progress flag 2019-06-20 13:29:49 -07:00
delta.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
detect-compiler
diff-delta.c diff-delta: set size out-parameter to 0 for NULL delta 2019-09-06 11:03:39 -07:00
diff-lib.c mark_fsmonitor_valid(): mark the index as changed if needed 2019-05-28 12:43:43 -07:00
diff-no-index.c Merge branch 'nd/diff-parseopt-4' 2019-04-25 16:41:12 +09:00
diff.c Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
diff.h Merge branch 'hw/doc-in-header' 2019-12-16 13:08:39 -08:00
diffcore-break.c diffcore-break: use a goto instead of a redundant if statement 2019-10-02 15:04:21 +09:00
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c Merge branch 'nd/the-index' into md/list-objects-filter-by-depth 2019-01-15 15:38:29 -08:00
diffcore-rename.c sha1-file: pass git_hash_algo to hash_object_file() 2020-01-31 10:45:39 -08:00
diffcore.h diff: move doc to diff.h and diffcore.h 2019-11-18 15:21:28 +09:00
dir-iterator.c dir-iterator: add flags parameter to dir_iterator_begin 2019-07-11 13:52:15 -07:00
dir-iterator.h dir-iterator: add flags parameter to dir_iterator_begin 2019-07-11 13:52:15 -07:00
dir.c Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
dir.h Merge branch 'ds/sparse-cone' 2019-12-25 11:21:58 -08:00
editor.c pager: add a helper function to clear the last line in the terminal 2019-06-24 13:38:46 -07:00
entry.c fill_stat_cache_info(): prepare for an fsmonitor fix 2019-05-28 12:43:42 -07:00
environment.c Merge branch 'ds/sparse-cone' 2019-12-25 11:21:58 -08:00
exec-cmd.c trace2: create new combined trace facility 2019-02-22 15:27:59 -08:00
exec-cmd.h *.[ch]: remove extern from function declarations using sed 2019-05-05 15:20:08 +09:00
fast-import.c Sync with 2.23.1 2019-12-06 16:31:39 +01:00
fetch-negotiator.c repo-settings: create feature.experimental setting 2019-08-13 13:33:55 -07:00
fetch-negotiator.h repo-settings: create feature.experimental setting 2019-08-13 13:33:55 -07:00
fetch-pack.c Merge branch 'ec/fetch-mark-common-refs-trace2' 2019-12-05 12:52:44 -08:00
fetch-pack.h fetch_pack(): drop unused parameters 2019-03-20 18:34:09 +09:00
fmt-merge-msg.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
fsck.c Sync with Git 2.24.1 2019-12-09 22:17:55 -08:00
fsck.h fsck: only provide oid/type in fsck_error callback 2019-10-28 14:05:18 +09:00
fsmonitor.c fsmonitor: handle version 2 of the hooks that will use opaque token 2020-01-13 14:58:43 -08:00
fsmonitor.h mark_fsmonitor_valid(): mark the index as changed if needed 2019-05-28 12:43:43 -07:00
fuzz-commit-graph.c fuzz-commit-graph: initialize repo object 2019-02-07 13:02:26 -08:00
fuzz-pack-headers.c
fuzz-pack-idx.c
generate-cmdlist.sh help -a: do not list commands that are excluded from the build 2019-04-19 14:03:24 +09:00
gettext.c Merge branch 'ab/test-env' 2019-07-25 13:59:20 -07:00
gettext.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
git-add--interactive.perl git add -p: use non-zero exit code when the diff generation failed 2019-12-06 08:57:34 -08:00
git-archimport.perl
git-bisect.sh bisect--helper: bisect_start shell function partially in C 2019-01-02 10:23:03 -08:00
git-compat-util.h Sync with Git 2.24.1 2019-12-09 22:17:55 -08:00
git-cvsexportcommit.perl cvsexportcommit: force crlf translation 2019-05-07 18:23:27 +09:00
git-cvsimport.perl Fix spelling errors in messages shown to users 2019-11-10 16:00:54 +09:00
git-cvsserver.perl
git-difftool--helper.sh mergetool: use get_merge_tool function 2019-05-13 23:11:59 +09:00
git-filter-branch.sh Recommend git-filter-repo instead of git-filter-branch 2019-09-05 13:01:48 -07:00
git-instaweb.sh git-instaweb: add Python builtin http.server support 2019-01-28 10:57:44 -08:00
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh Merge branch 'dl/difftool-mergetool' 2019-05-19 16:45:30 +09:00
git-mergetool.sh mergetool: use shell variable magic instead of awk 2019-06-12 13:20:56 -07:00
git-p4.py git-p4: avoid leak of file handle when cloning 2020-01-30 12:21:13 -08:00
git-parse-remote.sh
git-quiltimport.sh git-quiltimport: add --keep-non-patch option 2019-01-07 15:29:34 -08:00
git-rebase--preserve-merges.sh rebase: fold git-rebase--common into the -p backend 2019-05-15 10:57:32 +09:00
git-request-pull.sh request-pull: warn if the remote object is not the same as the local one 2019-05-28 13:06:25 -07:00
git-send-email.perl Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
git-sh-i18n.sh tests: make GIT_TEST_GETTEXT_POISON a boolean 2019-06-21 09:42:49 -07:00
git-sh-setup.sh stash: optionally use the scripted version again 2019-03-07 09:41:40 +09:00
git-submodule.sh submodule add: show 'add --dry-run' stderr when aborting 2020-01-15 10:22:24 -08:00
git-svn.perl git svn: stop using rebase --preserve-merges 2019-11-23 09:49:23 +09:00
GIT-VERSION-GEN Git 2.25.1 2020-02-16 20:37:38 -08:00
git-web--browse.sh
git.c stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
git.rc mingw: embed a manifest to trick UAC into Doing The Right Thing 2019-06-27 12:55:45 -07:00
gpg-interface.c Merge branch 'hi/gpg-mintrustlevel' 2020-01-30 14:17:08 -08:00
gpg-interface.h Merge branch 'hi/gpg-mintrustlevel' 2020-01-30 14:17:08 -08:00
graph.c graph: fix collapse of multiple edges 2020-01-15 12:14:51 -08:00
graph.h graph: move doc to graph.h and graph.c 2019-11-18 15:21:28 +09:00
grep.c grep: replace grep_read_mutex by internal obj read lock 2020-01-17 13:52:14 -08:00
grep.h grep: replace grep_read_mutex by internal obj read lock 2020-01-17 13:52:14 -08:00
hash.h hash.h: move object_id definition from cache.h 2019-06-20 10:40:42 -07:00
hashmap.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
hashmap.h Merge branch 'en/doc-typofix' 2019-12-01 09:04:35 -08:00
help.c Fix spelling errors in messages shown to users 2019-11-10 16:00:54 +09:00
help.h help: make help_unknown_ref() NORETURN 2019-08-30 10:22:42 -07:00
hex.c hex: drop sha1_to_hex() 2019-11-13 10:09:10 +09:00
http-backend.c http-backend: allow 64-character hex names 2019-04-01 11:57:38 +09:00
http-fetch.c
http-push.c http-push: simplify deleting a list item 2019-10-15 10:53:50 +09:00
http-walker.c Merge branch 'bc/hash-transition-16' 2019-04-25 16:41:17 +09:00
http.c strbuf: add and use strbuf_insertstr() 2020-02-10 09:04:45 -08:00
http.h http: use xmalloc with cURL 2019-08-15 12:37:10 -07:00
ident.c Merge branch 'ps/stash-in-c' 2019-04-22 11:14:43 +09:00
imap-send.c Merge branch 'nd/imap-send-typofix' 2019-02-12 09:00:25 -08:00
INSTALL Merge branch 'ar/install-doc-update-cmds-needing-the-shell' 2019-12-01 09:04:41 -08:00
interdiff.c
interdiff.h
iterator.h
json-writer.c
json-writer.h
khash.h hashmap: convert sha1hash() to oidhash() 2019-06-20 10:44:22 -07:00
kwset.c Merge branch 'rs/copy-array' into maint 2019-07-29 12:38:15 -07:00
kwset.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 2019-11-07 20:12:04 +09:00
levenshtein.c
levenshtein.h
LGPL-2.1
line-log.c Merge branch 'sg/line-log-tree-diff-optim' 2019-09-18 11:50:09 -07:00
line-log.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
line-range.c
line-range.h
linear-assignment.c
linear-assignment.h
list-objects-filter-options.c Merge branch 'jk/partial-clone-sparse-blob' 2019-10-07 11:32:54 +09:00
list-objects-filter-options.h Merge branch 'jk/partial-clone-sparse-blob' 2019-10-07 11:32:54 +09:00
list-objects-filter.c Merge branch 'jk/partial-clone-sparse-blob' 2019-10-07 11:32:54 +09:00
list-objects-filter.h list-objects-filter: implement composite filters 2019-06-28 08:41:53 -07:00
list-objects.c Merge branch 'jk/list-objects-optim-wo-trees' 2019-10-07 11:32:56 +09:00
list-objects.h list-objects: consume sparse tree walk 2019-01-17 13:44:39 -08:00
list.h
ll-merge.c am: reload .gitattributes after patching it 2019-09-03 15:16:18 -07:00
ll-merge.h merge: move doc to ll-merge.h 2019-11-18 15:21:28 +09:00
lockfile.c
lockfile.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
log-tree.c sha1-file: pass git_hash_algo to hash_object_file() 2020-01-31 10:45:39 -08:00
log-tree.h
ls-refs.c upload-pack: strip namespace from symref data 2019-05-28 10:02:00 -07:00
ls-refs.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
mailinfo.c mailinfo: factor out some repeated header handling 2020-02-11 10:21:43 -08:00
mailinfo.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
mailmap.c
mailmap.h
Makefile stash: remove the stash.useBuiltin setting 2020-03-05 12:50:28 -08:00
match-trees.c match-trees.c: remove the_repo from shift_tree*() 2019-06-27 12:45:17 -07:00
mem-pool.c
mem-pool.h
merge-blobs.c
merge-blobs.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
merge-recursive.c merge-recursive: use subtraction to flip stage 2020-01-27 11:17:41 -08:00
merge-recursive.h hashmap_entry: remove first member requirement from docs 2019-10-07 10:20:12 +09:00
merge.c read-cache.c: kill read_index() 2019-01-14 12:13:04 -08:00
mergesort.c
mergesort.h
midx.c midx: honor the MIDX_PROGRESS flag in midx_repack 2019-10-23 12:05:06 +09:00
midx.h midx: add MIDX_PROGRESS flag 2019-10-23 12:05:05 +09:00
name-hash.c Merge branch 'en/doc-typofix' 2019-12-01 09:04:35 -08:00
notes-cache.c
notes-cache.h
notes-merge.c notes-merge: switch to use the_hash_algo 2019-04-01 11:57:37 +09:00
notes-merge.h
notes-utils.c strbuf: add and use strbuf_insertstr() 2020-02-10 09:04:45 -08:00
notes-utils.h notes-utils.c: remove the_repository references 2019-01-14 12:13:04 -08:00
notes.c Merge branch 'rs/strbuf-insertstr' 2020-02-17 13:22:17 -08:00
notes.h Merge branch 'dl/format-patch-notes-config-fixup' 2019-12-25 11:21:58 -08:00
object-store.h Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
object.c Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
object.h commit-graph: fix writing first commit-graph during fetch 2019-10-25 11:19:16 +09:00
oidmap.c hashmap: introduce hashmap_free_entries 2019-10-07 10:20:11 +09:00
oidmap.h hashmap: use *_entry APIs for iteration 2019-10-07 10:20:11 +09:00
oidset.c Merge branch 'br/blame-ignore' 2019-07-19 11:30:20 -07:00
oidset.h Merge branch 'br/blame-ignore' 2019-07-19 11:30:20 -07:00
pack-bitmap-write.c pack-objects: drop packlist index_pos optimization 2019-09-06 11:03:42 -07:00
pack-bitmap.c Merge branch 'jk/packfile-reuse-cleanup' 2020-02-14 12:54:19 -08:00
pack-bitmap.h Merge branch 'jk/packfile-reuse-cleanup' 2020-02-14 12:54:19 -08:00
pack-check.c sha1-file: allow check_object_signature() to handle any repo 2020-01-31 10:45:39 -08:00
pack-objects.c Merge branch 'jk/optim-in-pack-idx-conversion' 2019-12-01 09:04:38 -08:00
pack-objects.h Merge branch 'jk/optim-in-pack-idx-conversion' 2019-12-01 09:04:38 -08:00
pack-revindex.c pack-revindex: open index if necessary 2019-04-16 16:58:21 +09:00
pack-revindex.h pack-revindex: open index if necessary 2019-04-16 16:58:21 +09:00
pack-write.c pack-write: use hash_to_hex when writing checksums 2019-08-19 15:04:58 -07:00
pack.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
packfile.c Merge branch 'mt/threaded-grep-in-object-store' 2020-02-14 12:54:20 -08:00
packfile.h Merge branch 'jk/packfile-reuse-cleanup' 2020-02-14 12:54:19 -08:00
pager.c pager: add a helper function to clear the last line in the terminal 2019-06-24 13:38:46 -07:00
parse-options-cb.c parse-options: simplify parse_options_dup() 2020-02-10 09:45:49 -08:00
parse-options.c Merge branch 'jb/parse-options-message-fix' 2020-02-12 12:41:37 -08:00
parse-options.h parse-options: const parse_options_concat() parameters 2020-02-10 09:44:58 -08:00
patch-delta.c
patch-ids.c hashmap: remove type arg from hashmap_{get,put,remove}_entry 2019-10-07 10:20:12 +09:00
patch-ids.h format-patch: make --base patch-id output stable 2019-05-08 19:27:43 +09:00
path.c normalize_path_copy(): document "dst" size expectations 2020-01-30 13:45:58 -08:00
path.h path: add a function to check for path suffix 2019-08-26 10:36:13 -07:00
pathspec.c prefix_path: show gitdir when arg is outside repo 2020-02-16 15:32:59 -08:00
pathspec.h Merge branch 'hw/doc-in-header' 2019-12-16 13:08:39 -08:00
pkt-line.c pkt-line: drop 'const'-ness of a param to set_packet_header() 2019-05-16 13:29:06 +09:00
pkt-line.h pkt-line: fix a typo 2019-12-02 08:48:56 -08:00
preload-index.c mark_fsmonitor_valid(): mark the index as changed if needed 2019-05-28 12:43:43 -07:00
pretty.c Merge branch 'rs/strbuf-insertstr' 2020-02-17 13:22:17 -08:00
pretty.h Merge branch 'sb/more-repo-in-api' 2019-02-05 14:26:09 -08:00
prio-queue.c
prio-queue.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
progress.c progress: create GIT_PROGRESS_DELAY 2019-11-27 10:57:10 +09:00
progress.h Merge branch 'sg/overlong-progress-fix' 2019-04-25 16:41:19 +09:00
promisor-remote.c promisor-remote: remove fetch_if_missing=0 2019-11-13 11:50:58 +09:00
promisor-remote.h Merge branch 'dl/honor-cflags-in-hdr-check' 2019-10-07 11:33:02 +09:00
prompt.c
prompt.h
protocol.c fetch: default to protocol version 2 2020-01-15 14:03:55 -08:00
protocol.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
quote.c Merge branch 'gs/sq-quote-buf-pretty' 2019-10-15 13:48:02 +09:00
quote.h quote: add sq_append_quote_argv_pretty() 2019-08-09 10:48:02 -07:00
range-diff.c range-diff: mark pointers as const 2019-12-06 12:34:49 -08:00
range-diff.h Merge branch 'dl/range-diff-with-notes' 2019-12-16 13:08:46 -08:00
reachable.c object: convert lookup_object() to use object_id 2019-06-20 10:18:09 -07:00
reachable.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
read-cache.c Merge branch 'js/mingw-loosen-overstrict-tree-entry-checks' 2020-01-10 14:45:27 -08:00
README.md doc: recommend lore.kernel.org over public-inbox.org 2019-11-30 09:12:04 -08:00
rebase-interactive.c rebase-interactive: warn if commit is dropped with `rebase --edit-todo' 2020-01-28 14:14:57 -08:00
rebase-interactive.h rebase-interactive: warn if commit is dropped with `rebase --edit-todo' 2020-01-28 14:14:57 -08:00
rebase.c pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 2020-02-10 10:52:10 -08:00
rebase.h pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 2020-02-10 10:52:10 -08:00
ref-filter.c Merge branch 'ew/hashmap' 2019-10-15 13:48:02 +09:00
ref-filter.h parse_opt_ref_sorting: always use with NONEG flag 2019-03-21 12:03:35 +09:00
reflog-walk.c
reflog-walk.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
refs.c hashmap_entry: remove first member requirement from docs 2019-10-07 10:20:12 +09:00
refs.h refs: move doc to refs.h 2019-11-18 15:21:28 +09:00
refspec.c refspec: make hash size independent 2019-04-01 11:57:39 +09:00
refspec.h remote: move doc to remote.h and refspec.h 2019-11-18 15:21:28 +09:00
RelNotes Git 2.25.1 2020-02-16 20:37:38 -08:00
remote-curl.c C: use skip_prefix() to avoid hardcoded string length 2020-01-31 13:03:45 -08:00
remote-testsvn.c
remote.c config: split repo scope to local and worktree 2020-02-10 10:32:20 -08:00
remote.h remote: move doc to remote.h and refspec.h 2019-11-18 15:21:28 +09:00
replace-object.c replace-object: make replace operations thread-safe 2020-01-17 13:52:14 -08:00
replace-object.h replace-object: make replace operations thread-safe 2020-01-17 13:52:14 -08:00
repo-settings.c Merge branch 'ds/feature-macros' 2019-10-24 13:34:03 +09:00
repository.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
repository.h Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
rerere.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
rerere.h
resolve-undo.c
resolve-undo.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
revision.c Merge branch 'dl/format-patch-notes-config-fixup' 2019-12-25 11:21:58 -08:00
revision.h Merge branch 'dl/format-patch-notes-config-fixup' 2019-12-25 11:21:58 -08:00
run-command.c Merge branch 'bc/run-command-nullness-after-free-fix' into maint 2020-02-14 12:42:27 -08:00
run-command.h run-command: move doc to run-command.h 2019-11-18 15:21:29 +09:00
send-pack.c Merge branch 'jk/send-pack-check-negative-with-quick' 2019-12-06 15:09:22 -08:00
send-pack.h
sequencer.c Merge branch 'ag/edit-todo-drop-check' 2020-02-14 12:54:21 -08:00
sequencer.h Merge branch 'ag/edit-todo-drop-check' 2020-02-14 12:54:21 -08:00
serve.c pack-protocol.txt: accept error packets in any context 2019-01-02 13:05:30 -08:00
serve.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
server-info.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
setup.c Merge branch 'es/outside-repo-errmsg-hints' 2020-02-17 13:22:19 -08:00
sh-i18n--envsubst.c cleanup: fix possible overflow errors in binary search, part 2 2019-06-13 11:28:53 -07:00
sha1-array.c sha1-array: move doc to sha1-array.h 2019-11-18 15:21:28 +09:00
sha1-array.h sha1-array: move doc to sha1-array.h 2019-11-18 15:21:28 +09:00
sha1-file.c Merge branch 'mt/use-passed-repo-more-in-funcs' 2020-02-14 12:54:22 -08:00
sha1-lookup.c Merge branch 'js/azure-pipelines-msvc' 2019-10-15 13:48:00 +09:00
sha1-lookup.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
sha1-name.c Merge branch 'jk/get-oid-error-message-i18n' 2020-02-14 12:54:21 -08:00
sha1dc_git.c hex: drop sha1_to_hex() 2019-11-13 10:09:10 +09:00
sha1dc_git.h
shallow.c Merge branch 'rs/dedup-includes' 2019-10-11 14:24:48 +09:00
shell.c shell: use skip_prefix() instead of starts_with() 2019-11-27 11:18:24 +09:00
shortlog.h
sideband.c Merge branch 'jt/fetch-v2-sideband' 2019-02-05 14:26:11 -08:00
sideband.h {fetch,upload}-pack: sideband v2 fetch response 2019-01-17 11:25:07 -08:00
sigchain.c
sigchain.h sigchain: move doc to sigchain.h 2019-11-18 15:21:29 +09:00
split-index.c Merge branch 'nd/split-index-null-base-fix' 2019-03-07 09:59:56 +09:00
split-index.h
stable-qsort.c Move git_sort(), a stable sort, into into libgit.a 2019-10-02 14:44:51 +09:00
strbuf.c strbuf: add a helper function to call the editor "on an strbuf" 2019-12-13 12:37:14 -08:00
strbuf.h strbuf: add and use strbuf_insertstr() 2020-02-10 09:04:45 -08:00
streaming.c streaming: allow open_istream() to handle any repo 2020-01-31 10:45:39 -08:00
streaming.h streaming: allow open_istream() to handle any repo 2020-01-31 10:45:39 -08:00
string-list.c style: the opening '{' of a function is in a separate line 2018-12-10 15:41:09 +09:00
string-list.h Merge branch 'en/string-list-can-be-custom-sorted' into maint 2020-02-14 12:42:27 -08:00
sub-process.c hashmap: remove type arg from hashmap_{get,put,remove}_entry 2019-10-07 10:20:12 +09:00
sub-process.h hashmap_entry: remove first member requirement from docs 2019-10-07 10:20:12 +09:00
submodule-config.c Merge branch 'mr/show-config-scope' 2020-02-17 13:22:17 -08:00
submodule-config.h submodule-config: add skip_if_read option to repo_read_gitmodules() 2020-01-17 13:52:14 -08:00
submodule.c Merge branch 'es/submodule-fetch-message-fix' into maint 2020-02-14 12:42:32 -08:00
submodule.h Sync with 2.22.2 2019-12-06 16:31:30 +01:00
symlinks.c Indent code with TABs 2018-12-09 12:37:32 +09:00
tag.c commit, tag: don't set parsed bit for parse failures 2019-10-28 14:04:49 +09:00
tag.h tag: factor out get_tagged_oid() 2019-09-05 14:10:18 -07:00
tar.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 2019-11-07 20:12:04 +09:00
tempfile.c
tempfile.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
thread-utils.c
thread-utils.h
tmp-objdir.c
tmp-objdir.h
trace2.c Merge branch 'jh/trace2' 2019-05-13 23:50:35 +09:00
trace2.h trace2: move doc to trace2.h 2019-11-18 15:21:29 +09:00
trace.c packfile: drop release_pack_memory() 2019-08-13 12:21:33 -07:00
trace.h trace: move doc to trace.h 2019-11-18 15:21:29 +09:00
trailer.c pretty: add support for separator option in %(trailers) 2019-01-29 10:03:32 -08:00
trailer.h pretty: add support for separator option in %(trailers) 2019-01-29 10:03:32 -08:00
transport-helper.c C: use skip_prefix() to avoid hardcoded string length 2020-01-31 13:03:45 -08:00
transport-internal.h transport: teach all vtables to allow fetch first 2019-08-22 14:20:39 -07:00
transport.c Merge branch 'jk/no-flush-upon-disconnecting-slrpc-transport' into maint 2020-02-14 12:42:28 -08:00
transport.h remote-curl: pass on atomic capability to remote side 2019-10-17 16:08:22 +09:00
tree-diff.c tree-walk.c: remove the_repo from fill_tree_descriptor() 2019-06-27 12:45:17 -07:00
tree-walk.c tree-walk.c: break circular dependency with unpack-trees 2020-02-04 10:32:15 -08:00
tree-walk.h tree-walk.c: break circular dependency with unpack-trees 2020-02-04 10:32:15 -08:00
tree.c tree: simplify parse_tree_indirect() 2019-09-03 15:10:53 -07:00
tree.h tree.c: make read_tree*() take 'struct repository *' 2018-11-19 10:50:33 +09:00
unicode-width.h Merge branch 'bb/unicode-12.1-reiwa' into maint 2019-07-25 14:27:11 -07:00
unimplemented.sh
unix-socket.c
unix-socket.h
unpack-trees.c Merge branch 'ds/sparse-checkout-harden' 2020-02-14 12:54:22 -08:00
unpack-trees.h tree-walk.c: break circular dependency with unpack-trees 2020-02-04 10:32:15 -08:00
upload-pack.c config: split repo scope to local and worktree 2020-02-10 10:32:20 -08:00
upload-pack.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
url.c Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
url.h list-objects-filter: implement composite filters 2019-06-28 08:41:53 -07:00
urlmatch.c
urlmatch.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
usage.c vreportf(): avoid relying on stdio buffering 2019-11-02 15:20:21 +09:00
userdiff.c Merge branch 'ln/userdiff-elixir' 2019-12-25 11:21:59 -08:00
userdiff.h
utf8.c utf8: use skip_iprefix() in same_utf_encoding() 2019-11-10 16:04:36 +09:00
utf8.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
varint.c
varint.h *.[ch]: remove extern from function declarations using spatch 2019-05-05 15:20:06 +09:00
version.c
version.h
versioncmp.c
walker.c walker_fetch(): avoid raw array length computation 2020-01-30 13:55:02 -08:00
walker.h
wildmatch.c
wildmatch.h
worktree.c Merge branch 'nd/corrupt-worktrees' into maint 2019-07-25 14:27:07 -07:00
worktree.h *.[ch]: manually align parameter lists 2019-05-05 15:20:10 +09:00
wrap-for-bin.sh
wrapper.c Merge branch 'ah/cleanups' 2019-10-09 14:01:00 +09:00
write-or-die.c
ws.c
wt-status.c Merge branch 'bc/object-id-part17' 2019-10-11 14:24:46 +09:00
wt-status.h wt-status: convert struct wt_status to object_id 2019-08-19 15:04:59 -07:00
xdiff-interface.c xdiff: avoid computing non-zero offset from NULL pointer 2020-01-28 23:13:25 -08:00
xdiff-interface.h Fix spelling errors in code comments 2019-11-10 16:00:54 +09:00
zlib.c

Build Status

Git - fast, scalable, distributed revision control system

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.

Many Git online resources are accessible from https://git-scm.com/ including full documentation and Git related tools.

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).

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 https://lore.kernel.org/git/, http://marc.info/?l=git and other archival sites.

Issues which are security relevant should be disclosed privately to the Git Security mailing list git-security@googlegroups.com.

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.

The name "git" was given by Linus Torvalds when he wrote the very first version. He described the tool as "the stupid content tracker" and the name as (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