Git Source Code Mirror. Please follow Documentation/SubmittingPatches procedure for any of your improvements.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Junio C Hamano bfc8b41932 Merge branch 'pb/merge-autostash-more' into next 2 days ago
.github Merge branch 'js/ci-make-sparse' into next 6 days ago
Documentation Merge branch 'pb/merge-autostash-more' into next 2 days ago
block-sha1 block-sha1: drop trailing semicolon from macro definition 5 months ago
builtin Merge branch 'pb/merge-autostash-more' into next 2 days ago
ci ci/install-dependencies: handle "sparse" job package installs 6 days ago
compat Merge branch 'jh/simple-ipc-sans-pthread' 2 months ago
contrib Merge branch 'ab/attribute-format' into next 2 weeks ago
ewah use CALLOC_ARRAY 5 months ago
git-gui Merge https://github.com/prati0100/git-gui 5 months ago
gitk-git Merge remote-tracking branch 'paulus/master' into pm/gitk-update 10 months ago
gitweb gitweb: add "e-mail privacy" feature to redact e-mail addresses 4 months ago
mergetools mergetools/kdiff3: make kdiff3 work on Windows too 2 months ago
negotiator use CALLOC_ARRAY 5 months ago
perl Merge branch 'ab/send-email-optim' into next 3 weeks ago
po l10n: es: 2.32.0 round 1 2 months ago
ppc *.[ch]: manually align parameter lists 2 years ago
refs Merge branch 'hn/refs-debug-empty-prefix' into next 2 weeks ago
sha1collisiondetection@855827c583 sha1dc: update from upstream 2 years ago
sha1dc Merge branch 'jk/lore-is-the-archive' 2 years ago
sha256 hash: implement and use a context cloning function 1 year ago
t Merge branch 'pb/merge-autostash-more' into next 2 days ago
templates hook: add sample template for push-to-checkout 10 months ago
trace2 Merge branch 'ab/trace2-squelch-gcc-warning' 2 months ago
xdiff Merge branch 'ab/pickaxe-pcre2' into next 4 weeks ago
.cirrus.yml CI: add FreeBSD CI support via Cirrus-CI 2 years ago
.clang-format clang-format: use git grep to generate the ForEachMacros list 2 years ago
.editorconfig editorconfig: indent text files with tabs 2 years ago
.gitattributes CoC: explicitly take any whitespace breakage 7 months ago
.gitignore Merge branch 'ls/subtree' 3 months ago
.gitmodules sha1dc: optionally use sha1collisiondetection as a submodule 4 years ago
.mailmap Add entry for Ramkumar Ramachandra 5 months ago
.travis.yml ci: remove GETTEXT_POISON jobs 6 months ago
.tsan-suppressions replace-object: make replace operations thread-safe 2 years ago
CODE_OF_CONDUCT.md CoC: update to version 2.0 + local changes 7 months ago
COPYING Update COPYING with GPLv2 with new FSF address 12 years ago
GIT-VERSION-GEN Git 2.32 2 months ago
INSTALL INSTALL: note on using Asciidoctor to build doc 4 months ago
LGPL-2.1 provide a copy of the LGPLv2.1 10 years ago
Makefile Merge branch 'ew/many-alternate-optim' 4 days ago
README.md ci: retire the Azure Pipelines definition 1 year ago
RelNotes The first batch post Git 2.32 2 months ago
SECURITY.md SECURITY: describe how to report vulnerabilities 4 months ago
abspath.c abspath: add a function to resolve paths with missing components 8 months ago
aclocal.m4 configure: use AC_LANG_PROGRAM consistently 11 years ago
add-interactive.c Merge branch 'rs/xcalloc-takes-nelem-first' 4 months ago
add-interactive.h built-in add -p: respect the `interactive.singlekey` config setting 2 years ago
add-patch.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
advice.c add: warn when asked to update SKIP_WORKTREE entries 4 months ago
advice.h advice.h: add missing __attribute__((format)) & fix usage 3 weeks ago
alias.c alias.c: mark split_cmdline_strerror() strings for translation 3 years ago
alias.h headers: normalize the spelling of some header guards 3 years ago
alloc.c commit: move members graph_pos, generation to a slab 1 year ago
alloc.h object: drop parsed_object_pool->commit_count 1 year ago
apply.c string-list.h users: change to use *_{nodup,dup}() 1 month ago
apply.h apply.h: include missing header 2 years ago
archive-tar.c use CALLOC_ARRAY 5 months ago
archive-zip.c archive: read short blobs in archive.c::write_archive_entry() 11 months ago
archive.c string-list.h users: change to use *_{nodup,dup}() 1 month ago
archive.h archive: expand only a single %(describe) per archive 5 months ago
attr.c *: fix typos which duplicate a word 2 months ago
attr.h *: remove 'const' qualifier for struct index_state 4 months ago
banned.h banned.h: mark ctime_r() and asctime_r() as banned 8 months ago
base85.c base85.c: have SP around arithmetic operators 8 years ago
bisect.c use CALLOC_ARRAY 5 months ago
bisect.h bisect: combine args passed to find_bisection() 12 months ago
blame.c hash: provide per-algorithm null OIDs 3 months ago
blame.h blame: simplify 'setup_blame_bloom_data' interface 9 months ago
blob.c object: drop parsed_object_pool->commit_count 1 year ago
blob.h blob: allow lookup_blob to handle arbitrary repositories 3 years ago
bloom.c Merge branch 'ah/plugleaks' 3 months ago
bloom.h bloom: encode out-of-bounds filters as non-empty 11 months ago
branch.c Merge branch 'bc/hash-transition-interop-part-1' 3 months ago
branch.h Merge branch 'nd/switch-and-restore' 2 years ago
builtin.h parallel-checkout: make it truly parallel 3 months ago
bulk-checkin.c bulk-checkin: make buffer reuse more obvious and safer 2 months ago
bulk-checkin.h *.[ch]: manually align parameter lists 2 years ago
bundle.c bundle: remove "ref_list" in favor of string-list.c API 4 weeks ago
bundle.h bundle: remove "ref_list" in favor of string-list.c API 4 weeks ago
cache-tree.c Merge branch 'ds/commit-and-checkout-with-sparse-index' into next 2 days ago
cache-tree.h cache-tree: extract subtree_pos() 6 months ago
cache.h Merge branch 'jt/bulk-prefetch' into next 4 days ago
cbtree.c oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
cbtree.h oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
chdir-notify.c add chdir-notify API 3 years ago
chdir-notify.h add chdir-notify API 3 years ago
check-builtins.sh check-builtins: strip executable suffix $X when enumerating builtins 7 years ago
check_bindir check_bindir: avoid "test <cond> -a/-o <cond>" 7 years ago
checkout.c config: drop git_config_get_string_const() 12 months ago
checkout.h *.[ch]: manually align parameter lists 2 years ago
chunk-format.c csum-file.h: increase hashfile buffer size 2 months ago
chunk-format.h chunk-format: create read chunk API 5 months ago
color.c color.c: alias RGB colors 8-15 to aixterm colors 1 year ago
color.h range-diff: use dim/bold cues to improve dual color mode 3 years ago
column.c Merge branch 'jk/strvec' 12 months ago
column.h *.[ch]: manually align parameter lists 2 years ago
combine-diff.c Merge branch 'ab/pickaxe-pcre2' 3 weeks ago
command-list.txt mailmap doc: create a new "gitmailmap(5)" man page 7 months ago
commit-graph.c Merge branch 'ab/attribute-format' 4 days ago
commit-graph.h commit-graph: use config to specify generation type 5 months ago
commit-reach.c use CALLOC_ARRAY 5 months ago
commit-reach.h commit-graph: return 64-bit generation number 6 months ago
commit-slab-decl.h Merge branch 'sg/commit-graph-cleanups' into master 1 year ago
commit-slab-impl.h commit-slab: add a function to deep free entries on the slab 1 year ago
commit-slab.h commit-slab: add a function to deep free entries on the slab 1 year ago
commit.c Merge branch 'ds/gender-neutral-doc' 2 weeks ago
commit.h Merge branch 'cm/rebase-i-fixup-amend-reword' 4 months ago
common-main.c common-main: delay trace2 initialization 2 years ago
config.c Merge branch 'ds/gender-neutral-doc' 2 weeks ago
config.h Merge branch 'ds/gender-neutral-doc' 2 weeks ago
config.mak.dev Merge branch 'jc/sparse-error-for-developer-build' 9 months ago
config.mak.in Merge branch 'jc/remove-export-from-config-mak-in' 8 years ago
config.mak.uname Merge branch 'js/config-mak-windows-pcre-fix' 2 weeks ago
configure.ac Remove support for v1 of the PCRE library 6 months ago
connect.c hash: provide per-algorithm null OIDs 3 months ago
connect.h Merge branch 'bc/sha-256-part-2' 1 year ago
connected.c Merge branch 'rs/more-buffered-io' 11 months ago
connected.h connected: always use partial clone optimization 1 year ago
convert.c convert: release strbuf to avoid leak 6 days ago
convert.h Merge branch 'ds/sparse-index-protections' 3 months ago
copy.c copy.c: use error_errno() 5 years ago
credential.c *.c *_init(): define in terms of corresponding *_INIT macro 1 month ago
credential.h *.h: move some *_INIT to designated initializers 1 month ago
csum-file.c Merge branch 'tb/midx-use-checksum' 2 weeks ago
csum-file.h Merge branch 'tb/midx-use-checksum' 2 weeks ago
ctype.c kwset: use unsigned char to store values with high-bit set 7 years ago
daemon.c Merge branch 'rs/daemon-sanitize-dir-sep' 4 months ago
date.c comments: avoid using the gender of our users 2 months ago
decorate.c use CALLOC_ARRAY 5 months ago
decorate.h *.[ch]: remove extern from function declarations using spatch 2 years ago
delta-islands.c oid_array: rename source file from sha1-array 1 year ago
delta-islands.h delta-islands: respect progress flag 2 years ago
delta.h *.[ch]: manually align parameter lists 2 years ago
detect-compiler Makefile: detect compiler and enable more warnings in DEVELOPER=1 3 years ago
diff-delta.c diff-delta: set size out-parameter to 0 for NULL delta 2 years ago
diff-lib.c diff-lib: handle index diffs with sparse dirs 3 weeks ago
diff-merges.c diff-merges: let "-m" imply "-p" 2 months ago
diff-merges.h diff-merges: move specific diff-index "-m" handling to diff-index 2 months ago
diff-no-index.c dir: introduce readdir_skip_dot_and_dotdot() helper 2 months ago
diff.c Merge branch 'en/rename-limits-doc' 4 days ago
diff.h diff.h: move pickaxe fields together again 3 months ago
diffcore-break.c diff: restrict when prefetching occurs 1 year ago
diffcore-delta.c diff.c: reduce implicit dependency on the_index 3 years ago
diffcore-order.c wildmatch: remove unused wildopts parameter 4 years ago
diffcore-pickaxe.c xdiff-interface: replace discard_hunk_line() with a flag 3 months ago
diffcore-rename.c Merge branch 'ah/plugleaks' into next 4 days ago
diffcore-rotate.c diff: --{rotate,skip}-to=<path> 6 months ago
diffcore.h Merge branch 'en/ort-perf-batch-11' 2 months ago
dir-iterator.c dir-iterator: add flags parameter to dir_iterator_begin 2 years ago
dir-iterator.h dir-iterator: add flags parameter to dir_iterator_begin 2 years ago
dir.c Merge branch 'ds/status-with-sparse-index' 4 days ago
dir.h Merge branch 'ew/many-alternate-optim' 4 days ago
editor.c config: fix leaks from git_config_get_string_const() 12 months ago
entry.c string-list.h users: change to use *_{nodup,dup}() 1 month ago
entry.h entry: add checkout_entry_ca() taking preloaded conv_attrs 4 months ago
environment.c environment: move strbuf into block to plug leak 6 days ago
environment.h environment: make `getenv_safe()` a public function 7 months ago
exec-cmd.c strvec: rename struct fields 1 year ago
exec-cmd.h argv-array: rename to strvec 1 year ago
fetch-negotiator.c negotiator/noop: add noop fetch negotiator 12 months ago
fetch-negotiator.h repo-settings: create feature.experimental setting 2 years ago
fetch-pack.c fetch-pack: signal v2 server that we are done making requests 2 months ago
fetch-pack.h fetch: teach independent negotiation (no packfile) 3 months ago
fmt-merge-msg.c fmt-merge-msg: free newly allocated temporary strings when done 6 days ago
fmt-merge-msg.h Lib-ify fmt-merge-msg 1 year ago
fsck.c fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 3 months ago
fsck.h fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 3 months ago
fsmonitor.c Merge branch 'jh/fsmonitor-prework' 4 months ago
fsmonitor.h fsmonitor: add assertion that fsmonitor is valid to check_removed 5 months ago
fuzz-commit-graph.c commit-graph: pass a 'struct repository *' in more places 11 months ago
fuzz-pack-headers.c fuzz: add basic fuzz testing target. 3 years ago
fuzz-pack-idx.c fuzz: add fuzz testing for packfile indices. 3 years ago
generate-cmdlist.sh Fit to Plan 9's ANSI/POSIX compatibility layer 11 months ago
generate-configlist.sh help: move list_config_help to builtin/help 1 year ago
gettext.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
gettext.h tests: remove support for GIT_TEST_GETTEXT_POISON 6 months ago
git-add--interactive.perl Merge branch 'js/add-i-color-fix' 8 months ago
git-archimport.perl archimport: use safe_pipe_capture for user input 4 years ago
git-bisect.sh bisect--helper: reimplement `bisect_skip` shell function in C 6 months ago
git-compat-util.h Merge branch 'ew/mmap-failures' 2 weeks ago
git-cvsexportcommit.perl cvsexportcommit: do not run git programs in dashed form 11 months ago
git-cvsimport.perl git-cvsimport: port to SHA-256 1 year ago
git-cvsserver.perl *: fix typos which duplicate a word 2 months ago
git-difftool--helper.sh mergetool: break setup_tool out into separate initialization function 6 months ago
git-filter-branch.sh filter-branch: drop $_x40 glob 5 months ago
git-instaweb.sh git-instaweb: add Python builtin http.server support 3 years ago
git-merge-octopus.sh Merge branch 'ma/up-to-date' 4 years ago
git-merge-one-file.sh merge-one-file: compute empty blob object ID 3 years ago
git-merge-resolve.sh scripts: use "git foo" not "git-foo" 4 years ago
git-mergetool--lib.sh Merge branch 'sh/mergetool-hideresolved' 5 months ago
git-mergetool.sh mergetool: do not enable hideResolved by default 5 months ago
git-p4.py git-p4: fix failed submit by skip non-text data files 1 month ago
git-quiltimport.sh git-quiltimport: add --keep-non-patch option 3 years ago
git-rebase--preserve-merges.sh rebase: remove unused function reschedule_last_action 12 months ago
git-request-pull.sh request-pull: warn if the remote object is not the same as the local one 2 years ago
git-send-email.perl Merge branch 'ab/send-email-optim' 1 week ago
git-sh-i18n.sh tests: remove support for GIT_TEST_GETTEXT_POISON 6 months ago
git-sh-setup.sh stash: optionally use the scripted version again 2 years ago
git-submodule.sh Merge branch 'ar/submodule-add' into next 1 week ago
git-svn.perl perl: check for perl warnings while running tests 9 months ago
git-web--browse.sh git-web--browse.sh: use the $( ... ) construct for command substitution 7 years ago
git.c Merge branch 'ps/config-env-option-with-separate-value' 3 months ago
git.rc mingw: embed a manifest to trick UAC into Doing The Right Thing 2 years ago
gpg-interface.c gpg-interface: remove other signature headers before verifying 6 months ago
gpg-interface.h gpg-interface: improve interface for parsing tags 6 months ago
graph.c graph: improve grammar of "invalid color" error message 2 months ago
graph.h graph: move doc to graph.h and graph.c 2 years ago
grep.c Merge branch 'rs/grep-parser-fix' 3 weeks ago
grep.h grep/pcre2: move back to thread-only PCREv2 structures 5 months ago
hash-lookup.c oid_pos(): access table through const pointers 6 months ago
hash-lookup.h oid_pos(): access table through const pointers 6 months ago
hash.h oidcpy_with_padding: constify `src' arg 4 weeks ago
hashmap.c use CALLOC_ARRAY 5 months ago
hashmap.h hashmap: provide deallocation function names 9 months ago
help.c help.c: help.autocorrect=never means "do not compute suggestions" 8 months ago
help.h help: do not expect built-in commands to be hardlinked 10 months ago
hex.c hex: print objects using the hash algorithm member 3 months ago
http-backend.c use CALLOC_ARRAY 5 months ago
http-fetch.c http-fetch: allow custom index-pack args 5 months ago
http-push.c Merge branch 'bc/hash-transition-interop-part-1' 3 months ago
http-walker.c Always use oidread to read into struct object_id 3 months ago
http.c Merge branch 'cs/http-use-basic-after-failed-negotiate' 2 months ago
http.h http: allow custom index-pack args 5 months ago
ident.c Merge branch 'pw/rebase-i-more-options' 11 months ago
imap-send.c Merge branch 'ab/attribute-format' 4 days ago
iterator.h refs: introduce an iterator interface 5 years ago
json-writer.c *.c *_init(): define in terms of corresponding *_INIT macro 1 month ago
json-writer.h *.h: move some *_INIT to designated initializers 1 month ago
khash.h khash: clarify that allocations never fail 4 weeks ago
kwset.c Merge branch 'rs/copy-array' into maint 2 years ago
kwset.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 2 years ago
levenshtein.c convert trivial cases to ALLOC_ARRAY 6 years ago
levenshtein.h Typofixes outside documentation area 12 years ago
line-log.c use CALLOC_ARRAY 5 months ago
line-log.h line-log: more responsive, incremental 'git log -L' 1 year ago
line-range.c use CALLOC_ARRAY 5 months ago
line-range.h line-range.c: remove implicit dependency on the_index 3 years ago
linear-assignment.c linear-assignment: fix potential out of bounds memory access 3 years ago
linear-assignment.h linear-assignment: a function to solve least-cost assignment problems 3 years ago
list-objects-filter-options.c help: fix small typo in error message 2 months ago
list-objects-filter-options.h list-objects: implement object type filter 3 months ago
list-objects-filter.c list-objects: implement object type filter 3 months ago
list-objects-filter.h list-objects: support filtering by tag and commit 4 months ago
list-objects.c bitmaps: don't recurse into trees already in the bitmap 2 months ago
list-objects.h list-objects: consume sparse tree walk 3 years ago
list.h tempfile: use list.h for linked list 4 years ago
ll-merge.c ll_union_merge(): rename path_unused parameter 2 months ago
ll-merge.h merge: move doc to ll-merge.h 2 years ago
lockfile.c lockfile.c: introduce 'hold_lock_file_for_update_mode' 1 year ago
lockfile.h lockfile.c: introduce 'hold_lock_file_for_update_mode' 1 year ago
log-tree.c load_ref_decorations(): fix decoration with tags 3 weeks ago
log-tree.h format-patch: make output filename configurable 9 months ago
ls-refs.c Merge branch 'jt/clone-unborn-head' 5 months ago
ls-refs.h ls-refs: report unborn targets of symrefs 6 months ago
mailinfo.c Merge branch 'ar/mailinfo-memcmp-to-skip-prefix' 3 weeks ago
mailinfo.h am: learn to process quoted lines that ends with CRLF 3 months ago
mailmap.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
mailmap.h shortlog: remove unused(?) "repo-abbrev" feature 7 months ago
match-trees.c Always use oidread to read into struct object_id 3 months ago
mem-pool.c mem-pool: drop trailing semicolon from macro definition 5 months ago
mem-pool.h mem-pool: use consistent pool variable name 12 months ago
merge-blobs.c merge-blobs.c: remove implicit dependency on the_index 3 years ago
merge-blobs.h *.[ch]: manually align parameter lists 2 years ago
merge-ort-wrappers.c merge(s): apply consistent punctuation to "up to date" messages 3 months ago
merge-ort-wrappers.h merge-ort-wrappers: new convience wrappers to mimic the old merge API 9 months ago
merge-ort.c Merge branch 'en/ort-perf-batch-14' into next 2 days ago
merge-ort.h merge-ort: avoid accidental API mis-use 2 months ago
merge-recursive.c Merge branch 'en/rename-limits-doc' 4 days ago
merge-recursive.h merge-recursive: fix unclear and outright wrong comments 1 year ago
merge.c dir.[ch]: replace dir_init() with DIR_INIT 1 month ago
mergesort.c mergesort: rename it to llist_mergesort() 9 years ago
mergesort.h mergesort: rename it to llist_mergesort() 9 years ago
midx.c Merge branch 'ab/attribute-format' 4 days ago
midx.h pack-revindex: write multi-pack reverse indexes 4 months ago
name-hash.c Merge branch 'ds/sparse-index-protections' 3 months ago
notes-cache.c notes-cache.c: remove the_repository references 3 years ago
notes-cache.h notes-cache.c: remove the_repository references 3 years ago
notes-merge.c dir: introduce readdir_skip_dot_and_dotdot() helper 2 months ago
notes-merge.h notes-merge.c: remove implicit dependency on the_index 3 years ago
notes-utils.c use CALLOC_ARRAY 5 months ago
notes-utils.h notes-utils.c: remove the_repository references 3 years ago
notes.c hash: provide per-algorithm null OIDs 3 months ago
notes.h Merge branch 'dl/format-patch-notes-config-fixup' 2 years ago
object-file.c Merge branch 'ew/many-alternate-optim' 4 days ago
object-name.c oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
object-store.h oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
object.c Merge branch 'jk/log-decorate-optim' 4 days ago
object.h object.h: add lookup_object_by_type() function 1 month ago
oid-array.c oid_pos(): access table through const pointers 6 months ago
oid-array.h oid-array: provide a for-loop iterator 8 months ago
oidmap.c hashmap: provide deallocation function names 9 months ago
oidmap.h hashmap: use *_entry APIs for iteration 2 years ago
oidset.c blame: silently ignore invalid ignore file objects 9 months ago
oidset.h blame: validate and peel the object names on the ignore list 10 months ago
oidtree.c oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
oidtree.h oidtree: a crit-bit tree for odb_loose_cache 4 weeks ago
pack-bitmap-write.c oid_pos(): access table through const pointers 6 months ago
pack-bitmap.c Merge branch 'jk/check-pack-valid-before-opening-bitmap' into next 4 days ago
pack-bitmap.h Merge branch 'ps/rev-list-object-type-filter' 3 months ago
pack-check.c csum-file: introduce checksum_valid() 1 month ago
pack-objects.c use CALLOC_ARRAY 5 months ago
pack-objects.h pack-objects: move static inline from a header to the sole consumer 2 months ago
pack-revindex.c Merge branch 'tb/reverse-midx' 4 months ago
pack-revindex.h pack-revindex: read multi-pack reverse indexes 4 months ago
pack-write.c Merge branch 'tb/reverse-midx' 4 months ago
pack.h Merge branch 'tb/reverse-midx' 4 months ago
packfile.c xmmap: inform Linux users of tuning knobs on ENOMEM 1 month ago
packfile.h packfile: introduce 'find_kept_pack_entry()' 5 months ago
pager.c pager: avoid setting COLUMNS when we're guessing its value 1 month ago
parallel-checkout.c parallel-checkout: send the new object_id algo field to the workers 3 months ago
parallel-checkout.h parallel-checkout: support progress displaying 3 months ago
parse-options-cb.c hash: provide per-algorithm null OIDs 3 months ago
parse-options.c parse-options: don't complete option aliases by default 2 weeks ago
parse-options.h parse-options: don't leak alias help messages 4 months ago
patch-delta.c patch-delta: handle truncated copy parameters 3 years ago
patch-ids.c use CALLOC_ARRAY 5 months ago
patch-ids.h patch-ids: handle duplicate hashmap entries 7 months ago
path.c t0060: test ntfs/hfs-obscured dotfiles 3 months ago
path.h merge-ort: write $GIT_DIR/AUTO_MERGE whenever we hit a conflict 4 months ago
pathspec.c Merge branch 'mt/add-rm-in-sparse-checkout' 3 months ago
pathspec.h Merge branch 'ds/gender-neutral-doc' 2 weeks ago
pkt-line.c Merge branch 'dl/packet-read-response-end-fix' 4 days ago
pkt-line.h pkt-line: add options argument to read_packetized_to_strbuf() 5 months ago
preload-index.c preload-index: log the number of lstat calls to trace2 6 months ago
pretty.c log: avoid loading decorations for userformats that don't need it 1 month ago
pretty.h log: avoid loading decorations for userformats that don't need it 1 month ago
prio-queue.c prio-queue: add 'peek' operation 3 years ago
prio-queue.h *.[ch]: remove extern from function declarations using spatch 2 years ago
progress.c use CALLOC_ARRAY 5 months ago
progress.h progress.c: silence cgcc suggestion about internal linkage 1 year ago
promisor-remote.c Merge branch 'jt/partial-clone-submodule-1' 2 weeks ago
promisor-remote.h promisor-remote: support per-repository config 1 month ago
prompt.c interactive: explicitly `fflush` stdout before expecting input 1 year ago
prompt.h interactive: refactor code asking the user for interactive input 1 year ago
protocol-caps.c object-info: support for retrieving object info 3 months ago
protocol-caps.h protocol-caps.h: add newline at end of file 2 months ago
protocol.c protocol: re-enable v2 protocol by default 10 months ago
protocol.h *.[ch]: remove extern from function declarations using spatch 2 years ago
prune-packed.c Lib-ify prune-packed 1 year ago
prune-packed.h Lib-ify prune-packed 1 year ago
quote.c quote: make sq_dequote_step() a public function 7 months ago
quote.h *.h: add a few missing __attribute__((format)) 3 weeks ago
range-diff.c Merge branch 'ab/pickaxe-pcre2' 3 weeks ago
range-diff.h Merge branch 'js/range-diff-one-side-only' 5 months ago
reachable.c object.h: add lookup_object_by_type() function 1 month ago
reachable.h *.[ch]: manually align parameter lists 2 years ago
read-cache.c Merge branch 'ah/plugleaks' into next 4 days ago
rebase-interactive.c rebase -i: clarify and fix 'fixup -c' rebase-todo help 6 months ago
rebase-interactive.h Merge branch 'en/rebase-backend' 1 year ago
rebase.c pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 1 year ago
rebase.h pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 1 year ago
ref-filter.c Merge branch 'ah/plugleaks' into next 4 days ago
ref-filter.h ref-filter: get rid of show_ref_array_item 3 months ago
reflog-walk.c use CALLOC_ARRAY 5 months ago
reflog-walk.h *.[ch]: manually align parameter lists 2 years ago
refs.c Merge branch 'hn/refs-iterator-peel-returns-boolean' 2 weeks ago
refs.h Merge branch 'tb/ls-refs-optim' 6 months ago
refspec.c Merge branch 'fc/atmark-in-refspec' 8 months ago
refspec.h Merge branch 'sb/clone-origin' 9 months ago
remote-curl.c Merge branch 'dl/packet-read-response-end-fix' 4 days ago
remote.c *: fix typos which duplicate a word 2 months ago
remote.h Merge branch 'jt/clone-unborn-head' 5 months ago
replace-object.c replace-object: make replace operations thread-safe 2 years ago
replace-object.h replace-object: make replace operations thread-safe 2 years ago
repo-settings.c sparse-index: add index.sparse config option 4 months ago
repository.c promisor-remote: support per-repository config 1 month ago
repository.h promisor-remote: support per-repository config 1 month ago
rerere.c dir: introduce readdir_skip_dot_and_dotdot() helper 2 months ago
rerere.h rerere.c: remove the_repository references 3 years ago
reset.c reset: clear_unpack_trees_porcelain to plug leak 6 days ago
reset.h reset: extract reset_head() from rebase 1 year ago
resolve-undo.c Merge branch 'ds/sparse-index-protections' 3 months ago
resolve-undo.h *.[ch]: remove extern from function declarations using spatch 2 years ago
revision.c add_pending_object_with_path(): work around "gcc -O3" complaint 2 months ago
revision.h Merge branch 'bc/rev-list-without-commit-line' 1 week ago
run-command.c Merge branch 'jt/partial-clone-submodule-1' 2 weeks ago
run-command.h Merge branch 'jt/partial-clone-submodule-1' 2 weeks ago
send-pack.c send-pack.c: move "no refs in common" abort earlier 1 month ago
send-pack.h Add missing includes and forward declarations 3 years ago
sequencer.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
sequencer.h sequencer: fix edit handling for cherry-pick and revert messages 4 months ago
serve.c Merge branch 'dl/packet-read-response-end-fix' 4 days ago
serve.h argv-array: rename to strvec 1 year ago
server-info.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
setup.c Merge branch 'jt/partial-clone-submodule-1' 2 weeks ago
sh-i18n--envsubst.c builtins + test helpers: use return instead of exit() in cmd_* 2 months ago
sha1dc_git.c hex: drop sha1_to_hex() 2 years ago
sha1dc_git.h sha1dc_git.h: re-arrange an ifdef chain for a subsequent change 4 years ago
shallow.c commit_graft_pos(): take an oid instead of a bare hash 6 months ago
shallow.h shallow: use struct 'shallow_lock' for additional safety 1 year ago
shell.c builtins + test helpers: use return instead of exit() in cmd_* 2 months ago
shortlog.h shortlog: remove unused(?) "repo-abbrev" feature 7 months ago
sideband.c sideband: don't lose clear-to-eol at packet boundary 2 months ago
sideband.h sideband: diagnose more sideband anomalies 9 months ago
sigchain.c Replace all die("BUG: ...") calls by BUG() ones 3 years ago
sigchain.h sigchain: move doc to sigchain.h 2 years ago
simple-ipc.h simple-ipc: correct ifdefs when NO_PTHREADS is defined 2 months ago
sparse-index.c sparse-index: recompute cache-tree 3 weeks ago
sparse-index.h sparse-index: expand_to_path() 4 months ago
split-index.c split-index: use oideq instead of memcmp to compare object_id's 2 months ago
split-index.h split-index: convert struct split_index to object_id 3 years ago
stable-qsort.c Move git_sort(), a stable sort, into into libgit.a 2 years ago
strbuf.c *.c *_init(): define in terms of corresponding *_INIT macro 1 month ago
strbuf.h Merge branch 'ab/attribute-format' 4 days ago
streaming.c streaming.c: move {open,close,read} from vtable to "struct git_istream" 3 months ago
streaming.h streaming: allow open_istream() to handle any repo 2 years ago
string-list.c string-list.[ch]: add a string_list_init_{nodup,dup}() 1 month ago
string-list.h string-list.[ch]: add a string_list_init_{nodup,dup}() 1 month ago
strmap.c *.c *_init(): define in terms of corresponding *_INIT macro 1 month ago
strmap.h strmap: make callers of strmap_remove() to call it in void context 8 months ago
strvec.c *.c *_init(): define in terms of corresponding *_INIT macro 1 month ago
strvec.h strvec: rename struct fields 1 year ago
sub-process.c strvec: convert remaining callers away from argv_array name 1 year ago
sub-process.h hashmap_entry: remove first member requirement from docs 2 years ago
submodule-config.c hash: provide per-algorithm null OIDs 3 months ago
submodule-config.h submodule-config: add skip_if_read option to repo_read_gitmodules() 2 years ago
submodule.c run-command: refactor subprocess env preparation 1 month ago
submodule.h *: remove 'const' qualifier for struct index_state 4 months ago
symlinks.c checkout: don't follow symlinks when removing entries 5 months ago
tag.c gpg-interface: improve interface for parsing tags 6 months ago
tag.h tag: factor out get_tagged_oid() 2 years ago
tar.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 2 years ago
tempfile.c tempfile.c: introduce 'create_tempfile_mode' 1 year ago
tempfile.h tempfile.c: introduce 'create_tempfile_mode' 1 year ago
thread-utils.c thread-utils: macros to unconditionally compile pthreads API 3 years ago
thread-utils.h thread-utils: macros to unconditionally compile pthreads API 3 years ago
tmp-objdir.c packfile: prepare for the existence of '*.rev' files 6 months ago
tmp-objdir.h tmp-objdir: introduce API for temporary object directories 5 years ago
trace.c http, imap-send: stop using CURLOPT_VERBOSE 1 year ago
trace.h http, imap-send: stop using CURLOPT_VERBOSE 1 year ago
trace2.c trace2: add a public function for getting the SID 9 months ago
trace2.h trace2: add a public function for getting the SID 9 months ago
trailer.c trailer: add new .cmd config option 3 months ago
trailer.h pretty format %(trailers): add a "key_value_separator" 8 months ago
transport-helper.c fetch: teach independent negotiation (no packfile) 3 months ago
transport-internal.h connect, transport: encapsulate arg in struct 6 months ago
transport.c Merge branch 'ab/struct-init' 2 weeks ago
transport.h fetch: teach independent negotiation (no packfile) 3 months ago
tree-diff.c hash: provide per-algorithm null OIDs 3 months ago
tree-walk.c Always use oidread to read into struct object_id 3 months ago
tree-walk.h tree-walk.c: break circular dependency with unpack-trees 2 years ago
tree.c tree.h API: simplify read_tree_recursive() signature 4 months ago
tree.h tree.h API: simplify read_tree_recursive() signature 4 months ago
unicode-width.h unicode: update the width tables to Unicode 13.0 1 year ago
unimplemented.sh unimplemented.sh: use the $( ... ) construct for command substitution 6 years ago
unix-socket.c unix-socket: disallow chdir() when creating unix domain sockets 5 months ago
unix-socket.h unix-socket: disallow chdir() when creating unix domain sockets 5 months ago
unix-stream-server.c unix-stream-server: create unix domain socket under lock 5 months ago
unix-stream-server.h unix-stream-server: create unix domain socket under lock 5 months ago
unpack-trees.c Merge branch 'ds/commit-and-checkout-with-sparse-index' into next 2 days ago
unpack-trees.h stash show: teach --include-untracked and --only-untracked 5 months ago
upload-pack.c Merge branch 'jt/push-negotiation' 3 months ago
upload-pack.h argv-array: rename to strvec 1 year ago
url.c Fix spelling errors in code comments 2 years ago
url.h list-objects-filter: implement composite filters 2 years ago
urlmatch.c credential: handle `credential.<partial-URL>.<key>` again 1 year ago
urlmatch.h credential: handle `credential.<partial-URL>.<key>` again 1 year ago
usage.c usage.c: don't copy/paste the same comment three times 4 months ago
userdiff.c userdiff: add support for C# record types 2 months ago
userdiff.h userdiff: add and use for_each_userdiff_driver() 4 months ago
utf8.c t0060: test ntfs/hfs-obscured dotfiles 3 months ago
utf8.h t0060: test ntfs/hfs-obscured dotfiles 3 months ago
varint.c cleanups: ensure that git-compat-util.h is included first 7 years ago
varint.h *.[ch]: remove extern from function declarations using spatch 2 years ago
version.c version --build-options: report commit, too, if possible 4 years ago
version.h version --build-options: report commit, too, if possible 4 years ago
versioncmp.c config: don't include config.h by default 4 years ago
walker.c lookup_unknown_object(): take a repository argument 4 months ago
walker.h remote-curl: show progress for fetches over dumb HTTP 1 year ago
wildmatch.c wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode 3 years ago
wildmatch.h wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode 3 years ago
worktree.c *.c static functions: add missing __attribute__((format)) 3 weeks ago
worktree.h worktree: teach worktree to lazy-load "prunable" reason 6 months ago
wrap-for-bin.sh Make running git under other debugger-like programs easy 3 years ago
wrapper.c add open_nofollow() helper 6 months ago
write-or-die.c fsync(): be prepared to see EINTR 2 months ago
ws.c Merge branch 'nd/the-index' 3 years ago
wt-status.c Merge branch 'ds/status-with-sparse-index' 4 days ago
wt-status.h status: skip sparse-checkout percentage with sparse-index 3 weeks ago
xdiff-interface.c Merge branch 'ab/pickaxe-pcre2' 3 weeks ago
xdiff-interface.h xdiff-interface: replace discard_hunk_line() with a flag 3 months ago
zlib.c Replace all die("BUG: ...") calls by BUG() ones 3 years ago

README.md

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