Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements. https://git-scm.com/
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.
 
 
 
 
 
 
Ævar Arnfjörð Bjarmason b7ba8587c3 git-compat-util.h: clarify GCC v.s. C99-specific in comment 9 months ago
.github Merge branch 'ab/ci-updates' 12 months ago
Documentation The sixth batch 9 months ago
block-sha1 block-sha1: drop trailing semicolon from macro definition 2 years ago
builtin Merge branch 'js/short-help-outside-repo-fix' 9 months ago
ci compat: auto-detect if zlib has uncompress2() 10 months ago
compat Merge branch 'ab/auto-detect-zlib-compress2' 9 months ago
contrib Merge branch 'ab/complete-show-all-commands' 9 months ago
ewah use CALLOC_ARRAY 2 years ago
git-gui Merge https://github.com/prati0100/git-gui 2 years ago
gitk-git Merge remote-tracking branch 'paulus/master' into pm/gitk-update 2 years ago
gitweb Merge branch 'gh/gitweb-branch-sort' 1 year ago
mergetools mergetools/xxdiff: prevent segfaults from stopping difftool 1 year ago
negotiator use CALLOC_ARRAY 2 years ago
perl perl Git.pm: don't ignore signalled failure in _cmd_close() 10 months ago
po l10n: Update Catalan translation 10 months ago
ppc *.[ch]: manually align parameter lists 4 years ago
refs Merge branch 'ps/avoid-unnecessary-hook-invocation-with-packed-refs' 9 months ago
reftable Merge branch 'ab/auto-detect-zlib-compress2' 9 months ago
sha1collisiondetection@855827c583 sha1dc: update from upstream 4 years ago
sha1dc Merge branch 'jk/lore-is-the-archive' 3 years ago
sha256 hash: implement and use a context cloning function 3 years ago
t Merge branch 'jd/t0015-modernize' 9 months ago
templates hook: add sample template for push-to-checkout 2 years ago
trace2 Merge branch 'ab/run-command' 12 months ago
xdiff Merge branch 'pw/xdiff-classify-record-in-histogram' 11 months ago
.cirrus.yml ci: update freebsd 12 cirrus job 1 year ago
.clang-format clang-format: use git grep to generate the ForEachMacros list 4 years ago
.editorconfig editorconfig: indent text files with tabs 3 years ago
.gitattributes CoC: explicitly take any whitespace breakage 2 years ago
.gitignore hook: add 'run' subcommand 11 months ago
.gitmodules
.mailmap Add entry for Ramkumar Ramachandra 2 years ago
.tsan-suppressions replace-object: make replace operations thread-safe 3 years ago
CODE_OF_CONDUCT.md CoC: update to version 2.0 + local changes 2 years ago
COPYING
GIT-VERSION-GEN Git 2.35.1 10 months ago
INSTALL INSTALL: mention that we need libcurl 7.19.4 or newer to build 1 year ago
LGPL-2.1
Makefile Merge branch 'ab/auto-detect-zlib-compress2' 9 months ago
README.md Merge branch 'po/readme-mention-contributor-hints' 10 months ago
RelNotes Name the next one 2.36 to prepare for 2.35.1 10 months ago
SECURITY.md SECURITY: describe how to report vulnerabilities 2 years ago
abspath.c abspath: add a function to resolve paths with missing components 2 years ago
aclocal.m4
add-interactive.c *.h: move some *_INIT to designated initializers 1 year ago
add-interactive.h built-in add -p: respect the `interactive.singlekey` config setting 3 years ago
add-patch.c Merge branch 'pw/add-p-hunk-split-fix' 10 months ago
advice.c branch: add --recurse-submodules option for branch creation 10 months ago
advice.h branch: add --recurse-submodules option for branch creation 10 months ago
alias.c alias.c: mark split_cmdline_strerror() strings for translation 4 years ago
alias.h headers: normalize the spelling of some header guards 4 years ago
alloc.c commit: move members graph_pos, generation to a slab 2 years ago
alloc.h object: drop parsed_object_pool->commit_count 2 years ago
apply.c Merge branch 'en/remerge-diff' 9 months ago
apply.h Merge branch 'rs/apply-symlinks-use-strset' 10 months ago
archive-tar.c run-command API users: use strvec_push(), not argv construction 1 year ago
archive-zip.c archive: read short blobs in archive.c::write_archive_entry() 2 years ago
archive.c i18n: factorize "--foo requires --bar" and the like 11 months ago
archive.h archive: expand only a single %(describe) per archive 2 years ago
attr.c attr: be careful about sparse directories 1 year ago
attr.h *: remove 'const' qualifier for struct index_state 2 years ago
banned.h banned.h: mark ctime_r() and asctime_r() as banned 2 years ago
base85.c
bisect.c bisect: simplify return code from bisect_checkout() 1 year ago
bisect.h bisect: combine args passed to find_bisection() 2 years ago
blame.c git-rev-list: add --exclude-first-parent-only flag 11 months ago
blame.h blame: simplify 'setup_blame_bloom_data' interface 2 years ago
blob.c object: drop parsed_object_pool->commit_count 2 years ago
blob.h blob: allow lookup_blob to handle arbitrary repositories 4 years ago
bloom.c Merge branch 'ah/plugleaks' 2 years ago
bloom.h bloom: encode out-of-bounds filters as non-empty 2 years ago
branch.c Merge branch 'gc/branch-recurse-submodules' 9 months ago
branch.h branch: add --recurse-submodules option for branch creation 10 months ago
builtin.h hook: add 'run' subcommand 11 months ago
bulk-checkin.c pack-write: split up finish_tmp_packfile() function 1 year ago
bulk-checkin.h *.[ch]: manually align parameter lists 4 years ago
bundle.c bundle API: change "flags" to be "extra_index_pack_args" 1 year ago
bundle.h bundle API: change "flags" to be "extra_index_pack_args" 1 year ago
cache-tree.c Merge branch 'vd/sparse-reset' 12 months ago
cache-tree.h cache-tree: extract subtree_pos() 2 years ago
cache.h Merge branch 'ab/auto-detect-zlib-compress2' 9 months ago
cbtree.c cbtree: remove broken and unused cb_unlink 12 months ago
cbtree.h cbtree: remove broken and unused cb_unlink 12 months ago
chdir-notify.c add chdir-notify API 5 years ago
chdir-notify.h add chdir-notify API 5 years ago
check-builtins.sh
checkout.c *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom 1 year ago
checkout.h *.[ch]: manually align parameter lists 4 years ago
chunk-format.c csum-file.h: increase hashfile buffer size 2 years ago
chunk-format.h chunk-format: create read chunk API 2 years ago
color.c color: allow colors to be prefixed with "reset" 1 year ago
color.h color: allow colors to be prefixed with "reset" 1 year ago
column.c Merge branch 'jk/strvec' 2 years ago
column.h *.[ch]: manually align parameter lists 4 years ago
combine-diff.c Merge branch 'ab/pickaxe-pcre2' 1 year ago
command-list.txt hook: add 'run' subcommand 11 months ago
commit-graph.c commit-graph: return if there is no git directory 12 months ago
commit-graph.h revision: avoid hitting packfiles when commits are in commit-graph 1 year ago
commit-reach.c use CALLOC_ARRAY 2 years ago
commit-reach.h commit-graph: return 64-bit generation number 2 years ago
commit-slab-decl.h Merge branch 'sg/commit-graph-cleanups' into master 2 years ago
commit-slab-impl.h commit-slab: add a function to deep free entries on the slab 3 years ago
commit-slab.h commit-slab: add a function to deep free entries on the slab 3 years ago
commit.c Merge branch 'ab/config-based-hooks-2' 10 months ago
commit.h receive-pack.c: consolidate find header logic 11 months ago
common-main.c Merge branch 'en/keep-cwd' 11 months ago
config.c Merge branch 'jt/conditional-config-on-remote-url' 10 months ago
config.h config: include file if remote URL matches a glob 10 months ago
config.mak.dev Makefile: FreeBSD cannot do C99-or-below build 10 months ago
config.mak.in
config.mak.uname Merge branch 'ab/auto-detect-zlib-compress2' 9 months ago
configure.ac compat: auto-detect if zlib has uncompress2() 10 months ago
connect.c ls-remote & transport API: release "struct transport_ls_refs_options" 10 months ago
connect.h Merge branch 'bc/sha-256-part-2' 2 years ago
connected.c run-command API: remove "env" member, always use "env_array" 1 year ago
connected.h connected: refactor iterator to return next object ID directly 1 year ago
convert.c Merge branch 'mc/clean-smudge-with-llp64' 1 year ago
convert.h Merge branch 'ds/sparse-index-protections' 2 years ago
copy.c
credential.c urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT 1 year ago
credential.h *.h: move some *_INIT to designated initializers 1 year ago
csum-file.c use xopen() to handle fatal open(2) failures 1 year ago
csum-file.h Merge branch 'tb/midx-use-checksum' 1 year ago
ctype.c
daemon.c Merge branch 'rs/daemon-plug-leak' 11 months ago
date.c strbuf_addftime(): handle "%s" manually 1 year ago
decorate.c use CALLOC_ARRAY 2 years ago
decorate.h *.[ch]: remove extern from function declarations using spatch 4 years ago
delta-islands.c oid_array: rename source file from sha1-array 3 years ago
delta-islands.h delta-islands: respect progress flag 3 years ago
delta.h odb: guard against data loss checking out a huge file 1 year ago
detect-compiler build: catch clang that identifies itself as "$VENDOR clang" 1 year ago
diff-delta.c diff-delta: set size out-parameter to 0 for NULL delta 3 years ago
diff-lib.c Merge branch 'dd/diff-files-unmerged-fix' into maint 1 year ago
diff-merges.c diff-merges: avoid history simplifications when diffing merges 10 months ago
diff-merges.h diff-index: restore -c/--cc options handling 1 year ago
diff-no-index.c dir: introduce readdir_skip_dot_and_dotdot() helper 2 years ago
diff.c Merge branch 'js/diff-filter-negation-fix' 9 months ago
diff.h Merge branch 'js/diff-filter-negation-fix' 9 months ago
diffcore-break.c diff: restrict when prefetching occurs 3 years ago
diffcore-delta.c diffcore-delta.c: LLP64 compatibility, upcast unity for left shift 1 year ago
diffcore-order.c
diffcore-pickaxe.c xdiff-interface: replace discard_hunk_line() with a flag 2 years ago
diffcore-rename.c Merge branch 'en/ort-perf-batch-15' 1 year ago
diffcore-rotate.c diff: --{rotate,skip}-to=<path> 2 years ago
diffcore.h merge-ort: store filepairs and filespecs in our mem_pool 1 year ago
dir-iterator.c dir-iterator: add flags parameter to dir_iterator_begin 3 years ago
dir-iterator.h dir-iterator: add flags parameter to dir_iterator_begin 3 years ago
dir.c Merge branch 'ds/sparse-checkout-malformed-pattern-fix' 11 months ago
dir.h dir: new flag to remove_dir_recurse() to spare the original_cwd 12 months ago
editor.c run-command API: remove "env" member, always use "env_array" 1 year ago
entry.c Merge branch 'mc/clean-smudge-with-llp64' 1 year ago
entry.h Merge branch 'mc/clean-smudge-with-llp64' 1 year ago
environment.c Merge branch 'ns/tmp-objdir' 11 months ago
environment.h environment: make `getenv_safe()` a public function 2 years ago
exec-cmd.c strvec: rename struct fields 2 years ago
exec-cmd.h argv-array: rename to strvec 2 years ago
fetch-negotiator.c repo-settings: rename the traditional default fetch.negotiationAlgorithm 10 months ago
fetch-negotiator.h repo-settings: create feature.experimental setting 3 years ago
fetch-pack.c i18n: factorize "--foo requires --bar" and the like 11 months ago
fetch-pack.h fetch: teach independent negotiation (no packfile) 2 years ago
fmt-merge-msg.c Merge branch 'fs/ssh-signing-key-lifetime' 11 months ago
fmt-merge-msg.h merge: allow to pretend a merge is made into a different branch 11 months ago
fsck.c fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 2 years ago
fsck.h fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 2 years ago
fsmonitor.c Merge branch 'jh/fsmonitor-prework' 2 years ago
fsmonitor.h fsmonitor: add assertion that fsmonitor is valid to check_removed 2 years ago
fuzz-commit-graph.c commit-graph: pass a 'struct repository *' in more places 2 years ago
fuzz-pack-headers.c fuzz: add basic fuzz testing target. 4 years ago
fuzz-pack-idx.c fuzz: add fuzz testing for packfile indices. 4 years ago
generate-cmdlist.sh generate-cmdlist.sh: don't parse command-list.txt thrice 1 year ago
generate-configlist.sh help: move list_config_help to builtin/help 3 years ago
generate-hooklist.sh hook-list.h: add a generated list of hooks, like config-list.h 1 year ago
gettext.c *.c static functions: add missing __attribute__((format)) 1 year ago
gettext.h gettext: remove optional non-standard parens in N_() definition 1 year ago
git-add--interactive.perl add -p: avoid use of undefined $key when ReadKey -> EOF 1 year ago
git-archimport.perl
git-bisect.sh Merge branch 'mr/bisect-in-c-4' 1 year ago
git-compat-util.h git-compat-util.h: clarify GCC v.s. C99-specific in comment 9 months ago
git-curl-compat.h http: check CURLE_SSL_PINNEDPUBKEYNOTMATCH when emitting errors 1 year ago
git-cvsexportcommit.perl cvsexportcommit: do not run git programs in dashed form 2 years ago
git-cvsimport.perl git-cvsimport: port to SHA-256 2 years ago
git-cvsserver.perl tests: disable fsync everywhere 1 year ago
git-difftool--helper.sh mergetool: break setup_tool out into separate initialization function 2 years ago
git-filter-branch.sh git-sh-setup: remove "sane_grep", it's not needed anymore 1 year ago
git-instaweb.sh git-sh-setup: remove "sane_grep", it's not needed anymore 1 year ago
git-merge-octopus.sh
git-merge-one-file.sh merge-one-file: compute empty blob object ID 5 years ago
git-merge-resolve.sh
git-mergetool--lib.sh Merge branch 'sh/mergetool-hideresolved' 2 years ago
git-mergetool.sh mergetool: do not enable hideResolved by default 2 years ago
git-p4.py Merge branch 'ab/config-based-hooks-2' 10 months ago
git-quiltimport.sh git-quiltimport: add --keep-non-patch option 4 years ago
git-request-pull.sh request-pull: warn if the remote object is not the same as the local one 4 years ago
git-send-email.perl send-email: use 'git hook run' for 'sendemail-validate' 11 months ago
git-sh-i18n.sh git-sh-i18n: remove unused eval_ngettext() 1 year ago
git-sh-setup.sh git-sh-setup: remove remnant bits referring to `git-legacy-stash` 10 months ago
git-submodule.sh Merge branch 'ab/unused-script-helpers' 1 year ago
git-svn.perl git-svn: drop support for `--preserve-merges` 1 year ago
git-web--browse.sh
git.c Merge branch 'ab/config-based-hooks-2' 10 months ago
git.rc mingw: embed a manifest to trick UAC into Doing The Right Thing 3 years ago
gpg-interface.c gpg-interface: trim CR from ssh-keygen 11 months ago
gpg-interface.h ssh signing: make verify-commit consider key lifetime 12 months ago
graph.c graph: improve grammar of "invalid color" error message 1 year ago
graph.h graph: move doc to graph.h and graph.c 3 years ago
grep.c Merge branch 'rs/grep-expr-cleanup' 10 months ago
grep.h log: let --invert-grep only invert --grep 11 months ago
hash-lookup.c oid_pos(): access table through const pointers 2 years ago
hash-lookup.h oid_pos(): access table through const pointers 2 years ago
hash.h hash.h: provide constants for the hash IDs 1 year ago
hashmap.c use CALLOC_ARRAY 2 years ago
hashmap.h hashmap: provide deallocation function names 2 years ago
help.c help: make auto-correction prompt more consistent 12 months ago
help.h help: move column config discovery to help.c library 1 year ago
hex.c hex: print objects using the hash algorithm member 2 years ago
hook.c hooks: convert worktree 'post-checkout' hook to hook library 11 months ago
hook.h hooks: convert worktree 'post-checkout' hook to hook library 11 months ago
http-backend.c Merge branch 'ab/usage-die-message' 11 months ago
http-fetch.c i18n: factorize "--foo requires --bar" and the like 11 months ago
http-push.c http: rename CURLOPT_FILE to CURLOPT_WRITEDATA 1 year ago
http-walker.c http: rename CURLOPT_FILE to CURLOPT_WRITEDATA 1 year ago
http.c run-command API users: use strvec_pushv(), not argv assignment 1 year ago
http.h http: check CURLE_SSL_PINNEDPUBKEYNOTMATCH when emitting errors 1 year ago
ident.c Merge branch 'pw/rebase-i-more-options' 2 years ago
imap-send.c http: centralize the accounting of libcurl dependencies 1 year ago
iterator.h
json-writer.c *.c *_init(): define in terms of corresponding *_INIT macro 1 year ago
json-writer.h *.h: move some *_INIT to designated initializers 1 year ago
khash.h khash: clarify that allocations never fail 1 year ago
kwset.c Merge branch 'rs/copy-array' into maint 3 years ago
kwset.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 3 years ago
levenshtein.c
levenshtein.h
line-log.c use CALLOC_ARRAY 2 years ago
line-log.h line-log: more responsive, incremental 'git log -L' 3 years ago
line-range.c use CALLOC_ARRAY 2 years ago
line-range.h line-range.c: remove implicit dependency on the_index 4 years ago
linear-assignment.c linear-assignment: fix potential out of bounds memory access 4 years ago
linear-assignment.h linear-assignment: a function to solve least-cost assignment problems 4 years ago
list-objects-filter-options.c help: fix small typo in error message 2 years ago
list-objects-filter-options.h list-objects: implement object type filter 2 years ago
list-objects-filter.c list-objects: implement object type filter 2 years ago
list-objects-filter.h list-objects: support filtering by tag and commit 2 years ago
list-objects.c list-objects.c: rename "traverse_trees_and_blobs" to "traverse_non_commits" 1 year ago
list-objects.h list-objects: consume sparse tree walk 4 years ago
list.h *.h: move some *_INIT to designated initializers 1 year ago
ll-merge.c ll-merge: make callers responsible for showing warnings 10 months ago
ll-merge.h ll-merge: make callers responsible for showing warnings 10 months ago
lockfile.c lockfile.c: introduce 'hold_lock_file_for_update_mode' 3 years ago
lockfile.h *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom 1 year ago
log-tree.c show, log: include conflict/warning messages in --remerge-diff headers 10 months ago
log-tree.h log-tree.h: remove unused function declarations 1 year ago
ls-refs.c Merge branch 'jk/ref-paranoia' 1 year ago
ls-refs.h serve.[ch]: don't pass "struct strvec *keys" to commands 1 year ago
mailinfo.c Merge branch 'ar/mailinfo-memcmp-to-skip-prefix' 1 year ago
mailinfo.h am: learn to process quoted lines that ends with CRLF 2 years ago
mailmap.c Merge branch 'ab/mailmap-leakfix' into maint 1 year ago
mailmap.h shortlog: remove unused(?) "repo-abbrev" feature 2 years ago
match-trees.c Always use oidread to read into struct object_id 2 years ago
mem-pool.c mem-pool: don't assume uintmax_t is aligned enough for all types 10 months ago
mem-pool.h mem-pool: use consistent pool variable name 2 years ago
merge-blobs.c ll-merge: make callers responsible for showing warnings 10 months ago
merge-blobs.h *.[ch]: manually align parameter lists 4 years ago
merge-ort-wrappers.c merge(s): apply consistent punctuation to "up to date" messages 2 years ago
merge-ort-wrappers.h merge-ort-wrappers: new convience wrappers to mimic the old merge API 2 years ago
merge-ort.c Merge branch 'en/remerge-diff' 9 months ago
merge-ort.h show, log: include conflict/warning messages in --remerge-diff headers 10 months ago
merge-recursive.c merge-ort: format messages slightly different for use in headers 10 months ago
merge-recursive.h merge-ort: format messages slightly different for use in headers 10 months ago
merge.c unpack-trees: introduce preserve_ignored to unpack_trees_options 1 year ago
mergesort.c mergesort: avoid left shift overflow 1 year ago
mergesort.h
midx.c Merge branch 'tb/midx-no-bitmap-for-no-objects' 9 months ago
midx.h midx: read `RIDX` chunk when present 10 months ago
name-hash.c Merge branch 'ds/sparse-index-protections' 2 years ago
notes-cache.c notes-cache.c: remove the_repository references 4 years ago
notes-cache.h notes-cache.c: remove the_repository references 4 years ago
notes-merge.c ll-merge: make callers responsible for showing warnings 10 months ago
notes-merge.h notes-merge.c: remove implicit dependency on the_index 4 years ago
notes-utils.c use CALLOC_ARRAY 2 years ago
notes-utils.h notes-utils.c: remove the_repository references 4 years ago
notes.c hash: provide per-algorithm null OIDs 2 years ago
notes.h Merge branch 'dl/format-patch-notes-config-fixup' 3 years ago
object-file.c Merge branch 'ns/tmp-objdir' 11 months ago
object-name.c cat-file: use GET_OID_ONLY_TO_DIE in --(textconv|filters) 11 months ago
object-store.h Merge branch 'ns/tmp-objdir' 11 months ago
object.c Merge branch 'ns/tmp-objdir' 11 months ago
object.h *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom 1 year ago
oid-array.c oid_pos(): access table through const pointers 2 years ago
oid-array.h *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom 1 year ago
oidmap.c hashmap: provide deallocation function names 2 years ago
oidmap.h hashmap: use *_entry APIs for iteration 3 years ago
oidset.c oidset: make oidset_size() an inline function 1 year ago
oidset.h oidset: make oidset_size() an inline function 1 year ago
oidtree.c oidtree: avoid unaligned access to crit-bit tree 1 year ago
oidtree.h oidtree: a crit-bit tree for odb_loose_cache 1 year ago
pack-bitmap-write.c pack-bitmap: read multi-pack bitmaps 1 year ago
pack-bitmap.c pack-bitmap.c: gracefully fallback after opening pack/MIDX 10 months ago
pack-bitmap.h Merge branch 'tb/repack-write-midx' 1 year ago
pack-check.c Merge branch 'ab/fsck-unexpected-type' 1 year ago
pack-objects.c use CALLOC_ARRAY 2 years ago
pack-objects.h pack-objects: move static inline from a header to the sole consumer 2 years ago
pack-revindex.c midx: read `RIDX` chunk when present 10 months ago
pack-revindex.h pack-revindex.h: correct the time complexity descriptions 1 year ago
pack-write.c Merge branch 'tb/pack-finalize-ordering' into maint 1 year ago
pack.h pack-write: split up finish_tmp_packfile() function 1 year ago
packfile.c Merge branch 'jt/pack-header-lshift-overflow' 11 months ago
packfile.h Merge branch 'tb/pack-revindex-on-disk-cleanup' 12 months ago
pager.c pager: fix crash when pager program doesn't exist 1 year ago
parallel-checkout.c Merge branch 'mc/clean-smudge-with-llp64' 1 year ago
parallel-checkout.h parallel-checkout: support progress displaying 2 years ago
parse-options-cb.c branch: add flags and config to inherit tracking 11 months ago
parse-options.c Merge branch 'ab/cat-file' 10 months ago
parse-options.h Merge branch 'rs/parse-options-lithelp-help' 10 months ago
patch-delta.c patch-delta: handle truncated copy parameters 4 years ago
patch-ids.c use CALLOC_ARRAY 2 years ago
patch-ids.h patch-ids: handle duplicate hashmap entries 2 years ago
path.c Merge branch 'lh/systemd-timers' 1 year ago
path.h *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom 1 year ago
pathspec.c add: skip tracked paths outside sparse-checkout cone 1 year ago
pathspec.h pathspec: use BUG(...) not die("BUG:%s:%d....", <file>, <line>) 12 months ago
pkt-line.c fetch-pack: redact packfile urls in traces 1 year ago
pkt-line.h fetch-pack: redact packfile urls in traces 1 year ago
preload-index.c preload-index: log the number of lstat calls to trace2 2 years ago
pretty.c Merge branch 'es/pretty-describe-more' 12 months ago
pretty.h log: avoid loading decorations for userformats that don't need it 1 year ago
prio-queue.c prio-queue: add 'peek' operation 4 years ago
prio-queue.h *.[ch]: remove extern from function declarations using spatch 4 years ago
progress.c use CALLOC_ARRAY 2 years ago
progress.h progress.c: silence cgcc suggestion about internal linkage 3 years ago
promisor-remote.c Merge branch 'jt/partial-clone-submodule-1' 1 year ago
promisor-remote.h promisor-remote: support per-repository config 1 year ago
prompt.c run-command API users: use strvec_push(), not argv construction 1 year ago
prompt.h interactive: refactor code asking the user for interactive input 3 years ago
protocol-caps.c Merge branch 'ab/serve-cleanup' 1 year ago
protocol-caps.h serve.[ch]: don't pass "struct strvec *keys" to commands 1 year ago
protocol.c connect, protocol: log negotiated protocol version 1 year ago
protocol.h *.[ch]: remove extern from function declarations using spatch 4 years ago
prune-packed.c Lib-ify prune-packed 3 years ago
prune-packed.h Lib-ify prune-packed 3 years ago
quote.c ref-filter: --format=%(raw) support --perl 1 year ago
quote.h Merge branch 'zh/ref-filter-raw-data' 1 year ago
range-diff.c i18n: refactor "foo and bar are mutually exclusive" 11 months ago
range-diff.h Merge branch 'js/range-diff-one-side-only' 2 years ago
reachable.c object.h: add lookup_object_by_type() function 1 year ago
reachable.h *.[ch]: manually align parameter lists 4 years ago
read-cache.c Merge branch 'vd/sparse-clean-etc' 9 months ago
rebase-interactive.c rebase: remove a no-longer-used function 1 year ago
rebase-interactive.h rebase: remove a no-longer-used function 1 year ago
rebase.c pull: remove support for `--rebase=preserve` 1 year ago
rebase.h pull: remove support for `--rebase=preserve` 1 year ago
ref-filter.c i18n: ref-filter: factorize "%(foo) atom used without %(bar) atom" 11 months ago
ref-filter.h for-each-ref: delay parsing of --sort=<atom> options 1 year ago
reflog-walk.c refs: make repo_dwim_log() accept a NULL oid 1 year ago
reflog-walk.h *.[ch]: manually align parameter lists 4 years ago
refs.c Merge branch 'ps/avoid-unnecessary-hook-invocation-with-packed-refs' 9 months ago
refs.h Merge branch 'ps/avoid-unnecessary-hook-invocation-with-packed-refs' 9 months ago
refspec.c Merge branch 'fc/atmark-in-refspec' 2 years ago
refspec.h Merge branch 'sb/clone-origin' 2 years ago
remote-curl.c run-command API users: use strvec_pushv(), not argv assignment 1 year ago
remote.c refs API: remove "failure_errno" from refs_resolve_ref_unsafe() 10 months ago
remote.h remote: die if branch is not found in repository 1 year ago
replace-object.c replace-object: make replace operations thread-safe 3 years ago
replace-object.h replace-object: make replace operations thread-safe 3 years ago
repo-settings.c Merge branch 'en/fetch-negotiation-default-fix' 9 months ago
repository.c Merge branch 'ns/tmp-objdir' 11 months ago
repository.h Merge branch 'en/fetch-negotiation-default-fix' 9 months ago
rerere.c ll-merge: make callers responsible for showing warnings 10 months ago
rerere.h rerere.c: remove the_repository references 4 years ago
reset.c Merge branch 'pw/use-in-process-checkout-in-rebase' 9 months ago
reset.h rebase --apply: set ORIG_HEAD correctly 10 months ago
resolve-undo.c Merge branch 'ds/sparse-index-protections' 2 years ago
resolve-undo.h *.[ch]: remove extern from function declarations using spatch 4 years ago
revision.c git-rev-list: add --exclude-first-parent-only flag 11 months ago
revision.h Merge branch 'jz/rev-list-exclude-first-parent-only' 9 months ago
run-command.c Merge branch 'ab/config-based-hooks-2' 10 months ago
run-command.h run-command: remove old run_hook_{le,ve}() hook API 11 months ago
send-pack.c Merge branch 'fs/ssh-signing' 1 year ago
send-pack.h Add missing includes and forward declarations 4 years ago
sequencer.c Merge branch 'ps/avoid-unnecessary-hook-invocation-with-packed-refs' 9 months ago
sequencer.h create_autostash(): remove unneeded parameter 10 months ago
serve.c serve: reject commands used as capabilities 1 year ago
serve.h serve.[ch]: remove "serve_options", split up --advertise-refs code 1 year ago
server-info.c *.c static functions: add missing __attribute__((format)) 1 year ago
setup.c setup: introduce startup_info->original_cwd 12 months ago
sh-i18n--envsubst.c builtins + test helpers: use return instead of exit() in cmd_* 1 year ago
sha1dc_git.c hex: drop sha1_to_hex() 3 years ago
sha1dc_git.h sha1dc_git.h: re-arrange an ifdef chain for a subsequent change 5 years ago
shallow.c git-rev-list: add --exclude-first-parent-only flag 11 months ago
shallow.h *.h: move some *_INIT to designated initializers 1 year ago
shell.c builtins + test helpers: use return instead of exit() in cmd_* 1 year ago
shortlog.h shortlog: remove unused(?) "repo-abbrev" feature 2 years ago
sideband.c sideband: don't lose clear-to-eol at packet boundary 1 year ago
sideband.h sideband: diagnose more sideband anomalies 2 years ago
sigchain.c Replace all die("BUG: ...") calls by BUG() ones 5 years ago
sigchain.h sigchain: move doc to sigchain.h 3 years ago
simple-ipc.h Merge branch 'jh/builtin-fsmonitor-part1' 1 year ago
sparse-index.c sparse-index: sparse index is disallowed when split index is active 10 months ago
sparse-index.h sparse-index: add ensure_correct_sparsity function 1 year ago
split-index.c split-index: it really is incompatible with the sparse index 10 months ago
split-index.h split-index: convert struct split_index to object_id 5 years ago
stable-qsort.c stable-qsort: avoid using potentially unaligned access 11 months ago
strbuf.c strbuf_addftime(): handle "%s" manually 1 year ago
strbuf.h strbuf.h: use BUG(...) not die("BUG: ...") 12 months ago
streaming.c object-file.c: stop dying in parse_loose_header() 1 year ago
streaming.h streaming: allow open_istream() to handle any repo 3 years ago
string-list.c string-list.[ch]: remove string_list_init() compatibility function 1 year ago
string-list.h string-list.[ch]: remove string_list_init() compatibility function 1 year ago
strmap.c *.c *_init(): define in terms of corresponding *_INIT macro 1 year ago
strmap.h strmap: make callers of strmap_remove() to call it in void context 2 years ago
strvec.c *.c *_init(): define in terms of corresponding *_INIT macro 1 year ago
strvec.h *.h: move some *_INIT to designated initializers 1 year ago
sub-process.c run-command API: remove "argv" member, always use "args" 1 year ago
sub-process.h hashmap_entry: remove first member requirement from docs 3 years ago
submodule-config.c branch: add --recurse-submodules option for branch creation 10 months ago
submodule-config.h branch: add --recurse-submodules option for branch creation 10 months ago
submodule.c branch: add --recurse-submodules option for branch creation 10 months ago
submodule.h branch: add --recurse-submodules option for branch creation 10 months ago
symlinks.c symlinks: do not include startup_info->original_cwd in dir removal 12 months ago
tag.c ssh signing: make verify-tag consider key lifetime 12 months ago
tag.h tag: factor out get_tagged_oid() 3 years ago
tar.h kset.h, tar.h: add missing header guard to prevent multiple inclusion 3 years ago
tempfile.c tempfile.c: introduce 'create_tempfile_mode' 3 years ago
tempfile.h tempfile.c: introduce 'create_tempfile_mode' 3 years ago
thread-utils.c thread-utils: macros to unconditionally compile pthreads API 4 years ago
thread-utils.h thread-utils: macros to unconditionally compile pthreads API 4 years ago
tmp-objdir.c log: clean unneeded objects during `log --remerge-diff` 10 months ago
tmp-objdir.h log: clean unneeded objects during `log --remerge-diff` 10 months ago
trace.c http, imap-send: stop using CURLOPT_VERBOSE 3 years ago
trace.h *.h: move some *_INIT to designated initializers 1 year ago
trace2.c trace2: add trace2_child_ready() to report on background children 1 year ago
trace2.h Merge branch 'jh/builtin-fsmonitor-part1' 1 year ago
trailer.c run-command API: remove "env" member, always use "env_array" 1 year ago
trailer.h pretty format %(trailers): add a "key_value_separator" 2 years ago
transport-helper.c Merge branch 'jk/http-push-status-fix' 1 year ago
transport-internal.h transport: rename "fetch" in transport_vtable to "fetch_refs" 1 year ago
transport.c ls-remote & transport API: release "struct transport_ls_refs_options" 10 months ago
transport.h ls-remote & transport API: release "struct transport_ls_refs_options" 10 months ago
tree-diff.c pathspec: use BUG(...) not die("BUG:%s:%d....", <file>, <line>) 12 months ago
tree-walk.c Always use oidread to read into struct object_id 2 years ago
tree-walk.h tree-walk.c: break circular dependency with unpack-trees 3 years ago
tree.c tree.h API: simplify read_tree_recursive() signature 2 years ago
tree.h tree.h API: simplify read_tree_recursive() signature 2 years ago
unicode-width.h unicode: update the width tables to Unicode 14 1 year ago
unimplemented.sh
unix-socket.c unix-socket: disallow chdir() when creating unix domain sockets 2 years ago
unix-socket.h unix-socket: disallow chdir() when creating unix domain sockets 2 years ago
unix-stream-server.c unix-stream-server: create unix domain socket under lock 2 years ago
unix-stream-server.h unix-stream-server: create unix domain socket under lock 2 years ago
unpack-trees.c Merge branch 'en/keep-cwd' 11 months ago
unpack-trees.h unpack-trees: refuse to remove startup_info->original_cwd 12 months ago
upload-pack.c upload-pack.c: increase output buffer size 12 months ago
upload-pack.h serve.[ch]: remove "serve_options", split up --advertise-refs code 1 year ago
url.c Fix spelling errors in code comments 3 years ago
url.h list-objects-filter: implement composite filters 3 years ago
urlmatch.c urlmatch: add underscore to URL_HOST_CHARS 1 year ago
urlmatch.h urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT 1 year ago
usage.c config API: use get_error_routine(), not vreportf() 12 months ago
userdiff.c userdiff-cpp: back out the digit-separators in numbers 1 year ago
userdiff.h userdiff: add and use for_each_userdiff_driver() 2 years ago
utf8.c t0060: test ntfs/hfs-obscured dotfiles 2 years ago
utf8.h t0060: test ntfs/hfs-obscured dotfiles 2 years ago
varint.c
varint.h *.[ch]: remove extern from function declarations using spatch 4 years ago
version.c version --build-options: report commit, too, if possible 5 years ago
version.h version --build-options: report commit, too, if possible 5 years ago
versioncmp.c
walker.c lookup_unknown_object(): take a repository argument 2 years ago
walker.h remote-curl: show progress for fetches over dumb HTTP 3 years ago
wildmatch.c wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode 4 years ago
wildmatch.h wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode 4 years ago
worktree.c refs API: remove "failure_errno" from refs_resolve_ref_unsafe() 10 months ago
worktree.h worktree: simplify find_shared_symref() memory ownership model 12 months ago
wrap-for-bin.sh Make running git under other debugger-like programs easy 5 years ago
wrapper.c wrapper: use a CSPRNG to generate random file names 10 months ago
write-or-die.c Merge branch 'ew/test-wo-fsync' 12 months ago
ws.c Merge branch 'nd/the-index' 4 years ago
wt-status.c Merge branch 'xw/am-empty' 11 months ago
wt-status.h status: skip sparse-checkout percentage with sparse-index 1 year ago
xdiff-interface.c xdiff: implement a zealous diff3, or "zdiff3" 1 year ago
xdiff-interface.h xdiff-interface: replace discard_hunk_line() with a flag 2 years ago
zlib.c Replace all die("BUG: ...") calls by BUG() ones 5 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 and Documentation/CodingGuidelines).

Those wishing to help with error message, usage and informational message string translations (localization l10) should see po/README.md (a po file is a Portable Object file that holds the translations).

To subscribe to the list, send an email with just "subscribe git" in the body to majordomo@vger.kernel.org (not the Git list). 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