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.
 
 
 
 
 
 
René Scharfe 5632e838f8 khash: clarify that allocations never fail 1 year ago
.github cmake(install): include vcpkg dlls 2 years ago
Documentation Git 2.32-rc1 1 year ago
block-sha1 block-sha1: drop trailing semicolon from macro definition 2 years ago
builtin Merge branch 'ab/fsck-api-cleanup' 1 year ago
ci Merge branch 'mt/parallel-checkout-part-3' 1 year ago
compat Merge branch 'jh/simple-ipc-sans-pthread' 1 year ago
contrib contrib/completion: fix zsh completion regression from 59d85a2a05 1 year 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 gitweb: add "e-mail privacy" feature to redact e-mail addresses 2 years ago
mergetools mergetools/vimdiff: add vimdiff1 merge tool variant 2 years ago
negotiator use CALLOC_ARRAY 2 years ago
perl Merge branch 'ab/send-email-inline-hooks-path' 1 year ago
po l10n: es: 2.32.0 round 1 1 year ago
ppc *.[ch]: manually align parameter lists 3 years ago
refs Merge branch 'wc/packed-ref-removal-cleanup' 1 year ago
sha1collisiondetection@855827c583 sha1dc: update from upstream 3 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 'rs/parallel-checkout-test-fix' 1 year ago
templates hook: add sample template for push-to-checkout 2 years ago
trace2 trace2: teach Git to log environment variables 3 years ago
xdiff Merge branch 'pw/patience-diff-clean-up' 1 year ago
.cirrus.yml CI: add FreeBSD CI support via Cirrus-CI 3 years ago
.clang-format clang-format: use git grep to generate the ForEachMacros list 3 years ago
.editorconfig editorconfig: indent text files with tabs 3 years ago
.gitattributes CoC: explicitly take any whitespace breakage 2 years ago
.gitignore Merge branch 'ls/subtree' 1 year ago
.gitmodules sha1dc: optionally use sha1collisiondetection as a submodule 5 years ago
.mailmap Add entry for Ramkumar Ramachandra 2 years ago
.travis.yml ci: remove GETTEXT_POISON jobs 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 Update COPYING with GPLv2 with new FSF address 13 years ago
GIT-VERSION-GEN Git 2.32 1 year ago
INSTALL INSTALL: note on using Asciidoctor to build doc 2 years ago
LGPL-2.1 provide a copy of the LGPLv2.1 12 years ago
Makefile Merge branch 'jh/simple-ipc-sans-pthread' 1 year ago
README.md ci: retire the Azure Pipelines definition 3 years ago
RelNotes Git 2.31.1 2 years 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 configure: use AC_LANG_PROGRAM consistently 12 years ago
add-interactive.c Merge branch 'rs/xcalloc-takes-nelem-first' 2 years ago
add-interactive.h built-in add -p: respect the `interactive.singlekey` config setting 3 years ago
add-patch.c Merge branch 'js/add-i-color-fix' 2 years ago
advice.c add: warn when asked to update SKIP_WORKTREE entries 2 years ago
advice.h add: warn when asked to update SKIP_WORKTREE entries 2 years 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 'jz/apply-3way-first-message-fix' 1 year ago
apply.h apply.h: include missing header 3 years ago
archive-tar.c use CALLOC_ARRAY 2 years ago
archive-zip.c archive: read short blobs in archive.c::write_archive_entry() 2 years ago
archive.c hash: provide per-algorithm null OIDs 1 year ago
archive.h archive: expand only a single %(describe) per archive 2 years ago
attr.c Merge branch 'ds/sparse-index-protections' 1 year ago
attr.h *: remove 'const' qualifier for struct index_state 1 year ago
banned.h banned.h: mark ctime_r() and asctime_r() as banned 2 years ago
base85.c base85.c: have SP around arithmetic operators 9 years ago
bisect.c use CALLOC_ARRAY 2 years ago
bisect.h bisect: combine args passed to find_bisection() 2 years ago
blame.c hash: provide per-algorithm null OIDs 1 year 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' 1 year ago
bloom.h bloom: encode out-of-bounds filters as non-empty 2 years ago
branch.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
branch.h Merge branch 'nd/switch-and-restore' 3 years ago
builtin.h parallel-checkout: make it truly parallel 1 year ago
bulk-checkin.c Use the final_oid_fn to finalize hashing of object IDs 1 year ago
bulk-checkin.h *.[ch]: manually align parameter lists 3 years ago
bundle.c bundle: arguments can be read from stdin 2 years ago
bundle.h Merge branch 'bc/sha-256-part-3' 2 years ago
cache-tree.c Merge branch 'ds/sparse-index-protections' 1 year ago
cache-tree.h cache-tree: extract subtree_pos() 2 years ago
cache.h Merge branch 'mt/parallel-checkout-part-3' 1 year ago
chdir-notify.c add chdir-notify API 5 years ago
chdir-notify.h add chdir-notify API 5 years ago
check-builtins.sh check-builtins: strip executable suffix $X when enumerating builtins 8 years ago
check_bindir check_bindir: avoid "test <cond> -a/-o <cond>" 8 years ago
checkout.c config: drop git_config_get_string_const() 2 years ago
checkout.h *.[ch]: manually align parameter lists 3 years ago
chunk-format.c chunk-format: restore duplicate chunk checks 2 years ago
chunk-format.h chunk-format: create read chunk API 2 years ago
color.c color.c: alias RGB colors 8-15 to aixterm colors 3 years ago
color.h range-diff: use dim/bold cues to improve dual color mode 4 years ago
column.c Merge branch 'jk/strvec' 2 years ago
column.h *.[ch]: manually align parameter lists 3 years ago
combine-diff.c hash: provide per-algorithm null OIDs 1 year ago
command-list.txt mailmap doc: create a new "gitmailmap(5)" man page 2 years ago
commit-graph.c commit-graph: don't store file hashes as struct object_id 1 year ago
commit-graph.h commit-graph: use config to specify generation type 2 years 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 2 years ago
commit-slab.h commit-slab: add a function to deep free entries on the slab 2 years ago
commit.c Merge branch 'cm/rebase-i-fixup-amend-reword' 2 years ago
commit.h Merge branch 'cm/rebase-i-fixup-amend-reword' 2 years ago
common-main.c common-main: delay trace2 initialization 3 years ago
config.c Merge branch 'ps/config-global-override' 1 year ago
config.h config: unify code paths to get global config paths 1 year ago
config.mak.dev Merge branch 'jc/sparse-error-for-developer-build' 2 years ago
config.mak.in Merge branch 'jc/remove-export-from-config-mak-in' 10 years ago
config.mak.uname Merge branch 'jh/simple-ipc' 2 years ago
configure.ac Remove support for v1 of the PCRE library 2 years ago
connect.c hash: provide per-algorithm null OIDs 1 year ago
connect.h Merge branch 'bc/sha-256-part-2' 2 years ago
connected.c Merge branch 'rs/more-buffered-io' 2 years ago
connected.h connected: always use partial clone optimization 3 years ago
convert.c Merge branch 'ds/sparse-index-protections' 1 year ago
convert.h Merge branch 'ds/sparse-index-protections' 1 year ago
copy.c copy.c: use error_errno() 6 years ago
credential.c credential: treat CR/LF as line endings in the credential protocol 2 years ago
credential.h credential: correct order of parameters for credential_match 2 years ago
csum-file.c csum-file: make hashwrite() more readable 2 years ago
csum-file.h csum-file: add hashwrite_be64() 2 years ago
ctype.c kwset: use unsigned char to store values with high-bit set 8 years ago
daemon.c Merge branch 'rs/daemon-sanitize-dir-sep' 2 years ago
date.c date.c: allow compact version of ISO-8601 datetime 2 years ago
decorate.c use CALLOC_ARRAY 2 years ago
decorate.h *.[ch]: remove extern from function declarations using spatch 3 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 *.[ch]: manually align parameter lists 3 years ago
detect-compiler Makefile: detect compiler and enable more warnings in DEVELOPER=1 5 years ago
diff-delta.c diff-delta: set size out-parameter to 0 for NULL delta 3 years ago
diff-lib.c hash: provide per-algorithm null OIDs 1 year ago
diff-merges.c diff-merges: introduce log.diffMerges config variable 1 year ago
diff-merges.h diff-merges: introduce log.diffMerges config variable 1 year ago
diff-no-index.c dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
diff.c Merge branch 'pw/word-diff-zero-width-matches' 1 year ago
diff.h Merge branch 'jc/diffcore-rotate' 2 years ago
diffcore-break.c diff: restrict when prefetching occurs 3 years ago
diffcore-delta.c diff.c: reduce implicit dependency on the_index 4 years ago
diffcore-order.c wildmatch: remove unused wildopts parameter 5 years ago
diffcore-pickaxe.c Merge branch 'nd/the-index' into md/list-objects-filter-by-depth 4 years ago
diffcore-rename.c Merge branch 'en/ort-perf-batch-10' 1 year ago
diffcore-rotate.c diff: --{rotate,skip}-to=<path> 2 years ago
diffcore.h Merge branch 'en/ort-perf-batch-10' 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 'en/dir-traversal' 1 year ago
dir.h dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
editor.c config: fix leaks from git_config_get_string_const() 2 years ago
entry.c dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
entry.h entry: add checkout_entry_ca() taking preloaded conv_attrs 2 years ago
environment.c config: allow specifying config entries via envvar pairs 2 years 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 negotiator/noop: add noop fetch negotiator 2 years ago
fetch-negotiator.h repo-settings: create feature.experimental setting 3 years ago
fetch-pack.c fetch: teach independent negotiation (no packfile) 1 year ago
fetch-pack.h fetch: teach independent negotiation (no packfile) 1 year ago
fmt-merge-msg.c use CALLOC_ARRAY 2 years ago
fmt-merge-msg.h Lib-ify fmt-merge-msg 3 years ago
fsck.c fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 1 year ago
fsck.h fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW 1 year 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 Fit to Plan 9's ANSI/POSIX compatibility layer 2 years ago
generate-configlist.sh help: move list_config_help to builtin/help 2 years ago
gettext.c Merge branch 'ab/detox-gettext-tests' 2 years ago
gettext.h tests: remove support for GIT_TEST_GETTEXT_POISON 2 years ago
git-add--interactive.perl Merge branch 'js/add-i-color-fix' 2 years ago
git-archimport.perl archimport: use safe_pipe_capture for user input 5 years ago
git-bisect.sh bisect--helper: reimplement `bisect_skip` shell function in C 2 years ago
git-compat-util.h Merge branch 'tb/precompose-prefix-simplify' 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 git-cvsserver: port to SHA-256 2 years ago
git-difftool--helper.sh mergetool: break setup_tool out into separate initialization function 2 years ago
git-filter-branch.sh filter-branch: drop $_x40 glob 2 years ago
git-instaweb.sh git-instaweb: add Python builtin http.server support 4 years ago
git-merge-octopus.sh Merge branch 'ma/up-to-date' 5 years ago
git-merge-one-file.sh merge-one-file: compute empty blob object ID 4 years ago
git-merge-resolve.sh scripts: use "git foo" not "git-foo" 5 years ago
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 git-p4: speed up search for branch parent 1 year ago
git-quiltimport.sh git-quiltimport: add --keep-non-patch option 4 years ago
git-rebase--preserve-merges.sh rebase: remove unused function reschedule_last_action 2 years ago
git-request-pull.sh request-pull: warn if the remote object is not the same as the local one 3 years ago
git-send-email.perl Merge branch 'ab/send-email-inline-hooks-path' 1 year ago
git-sh-i18n.sh tests: remove support for GIT_TEST_GETTEXT_POISON 2 years ago
git-sh-setup.sh stash: optionally use the scripted version again 4 years ago
git-submodule.sh submodule update: silence underlying fetch with "--quiet" 1 year ago
git-svn.perl perl: check for perl warnings while running tests 2 years ago
git-web--browse.sh git-web--browse.sh: use the $( ... ) construct for command substitution 9 years ago
git.c Merge branch 'ps/config-env-option-with-separate-value' 1 year ago
git.rc mingw: embed a manifest to trick UAC into Doing The Right Thing 3 years ago
gpg-interface.c gpg-interface: remove other signature headers before verifying 2 years ago
gpg-interface.h gpg-interface: improve interface for parsing tags 2 years ago
graph.c strvec: rename struct fields 2 years ago
graph.h graph: move doc to graph.h and graph.c 3 years ago
grep.c hash: provide per-algorithm null OIDs 1 year ago
grep.h grep/pcre2: move back to thread-only PCREv2 structures 2 years 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: provide per-algorithm null OIDs 1 year ago
hashmap.c use CALLOC_ARRAY 2 years ago
hashmap.h hashmap: provide deallocation function names 2 years ago
help.c help.c: help.autocorrect=never means "do not compute suggestions" 2 years ago
help.h help: do not expect built-in commands to be hardlinked 2 years ago
hex.c hex: print objects using the hash algorithm member 1 year ago
http-backend.c use CALLOC_ARRAY 2 years ago
http-fetch.c http-fetch: allow custom index-pack args 2 years ago
http-push.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
http-walker.c Always use oidread to read into struct object_id 1 year ago
http.c Merge branch 'cs/http-use-basic-after-failed-negotiate' 1 year ago
http.h http: allow custom index-pack args 2 years ago
ident.c Merge branch 'pw/rebase-i-more-options' 2 years ago
imap-send.c use CALLOC_ARRAY 2 years ago
iterator.h refs: introduce an iterator interface 6 years ago
json-writer.c json_writer: new routines to create JSON data 4 years ago
json-writer.h json-writer.h: add missing include (hdr-check) 4 years 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 convert trivial cases to ALLOC_ARRAY 7 years ago
levenshtein.h Typofixes outside documentation area 13 years ago
line-log.c use CALLOC_ARRAY 2 years ago
line-log.h line-log: more responsive, incremental 'git log -L' 2 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 list-objects: implement object type filter 1 year ago
list-objects-filter-options.h list-objects: implement object type filter 1 year ago
list-objects-filter.c list-objects: implement object type filter 1 year ago
list-objects-filter.h list-objects: support filtering by tag and commit 1 year ago
list-objects.c list-objects: support filtering by tag and commit 1 year ago
list-objects.h list-objects: consume sparse tree walk 4 years ago
list.h tempfile: use list.h for linked list 5 years ago
ll-merge.c use CALLOC_ARRAY 2 years ago
ll-merge.h merge: move doc to ll-merge.h 3 years ago
lockfile.c lockfile.c: introduce 'hold_lock_file_for_update_mode' 2 years ago
lockfile.h lockfile.c: introduce 'hold_lock_file_for_update_mode' 2 years ago
log-tree.c hash: provide per-algorithm null OIDs 1 year ago
log-tree.h format-patch: make output filename configurable 2 years ago
ls-refs.c Merge branch 'jt/clone-unborn-head' 2 years ago
ls-refs.h ls-refs: report unborn targets of symrefs 2 years ago
mailinfo.c Merge branch 'dd/mailinfo-quoted-cr' 1 year ago
mailinfo.h am: learn to process quoted lines that ends with CRLF 1 year ago
mailmap.c Merge branch 'jk/open-dotgitx-with-nofollow' 2 years ago
mailmap.h shortlog: remove unused(?) "repo-abbrev" feature 2 years ago
match-trees.c Always use oidread to read into struct object_id 1 year ago
mem-pool.c mem-pool: drop trailing semicolon from macro definition 2 years ago
mem-pool.h mem-pool: use consistent pool variable name 2 years ago
merge-blobs.c merge-blobs.c: remove implicit dependency on the_index 4 years ago
merge-blobs.h *.[ch]: manually align parameter lists 3 years ago
merge-ort-wrappers.c merge(s): apply consistent punctuation to "up to date" messages 1 year 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 'ah/merge-ort-i18n' 1 year ago
merge-ort.h merge-ort: implement merge_incore_recursive() 2 years ago
merge-recursive.c Merge branch 'js/merge-already-up-to-date-message-reword' 1 year ago
merge-recursive.h merge-recursive: fix unclear and outright wrong comments 2 years ago
merge.c dir: fix problematic API to avoid memory leaks 2 years ago
mergesort.c mergesort: rename it to llist_mergesort() 11 years ago
mergesort.h mergesort: rename it to llist_mergesort() 11 years ago
midx.c Always use oidread to read into struct object_id 1 year ago
midx.h pack-revindex: write multi-pack reverse indexes 2 years ago
name-hash.c Merge branch 'ds/sparse-index-protections' 1 year 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 dir: introduce readdir_skip_dot_and_dotdot() helper 1 year 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 1 year ago
notes.h Merge branch 'dl/format-patch-notes-config-fixup' 3 years ago
object-file.c dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
object-name.c object-name.c: rename from sha1-name.c 2 years ago
object-store.h packfile: add kept-pack cache for find_kept_pack_entry() 2 years ago
object.c lookup_unknown_object(): take a repository argument 1 year ago
object.h Merge branch 'jt/push-negotiation' 1 year ago
oid-array.c oid_pos(): access table through const pointers 2 years ago
oid-array.h oid-array: provide a for-loop iterator 2 years ago
oidmap.c hashmap: provide deallocation function names 2 years ago
oidmap.h hashmap: use *_entry APIs for iteration 3 years ago
oidset.c blame: silently ignore invalid ignore file objects 2 years ago
oidset.h blame: validate and peel the object names on the ignore list 2 years ago
pack-bitmap-write.c oid_pos(): access table through const pointers 2 years ago
pack-bitmap.c Merge branch 'ps/rev-list-object-type-filter' 1 year ago
pack-bitmap.h Merge branch 'ps/rev-list-object-type-filter' 1 year ago
pack-check.c fsck: correctly compute checksums on idx files larger than 4GB 2 years 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 1 year ago
pack-revindex.c Merge branch 'tb/reverse-midx' 2 years ago
pack-revindex.h pack-revindex: read multi-pack reverse indexes 2 years ago
pack-write.c Merge branch 'tb/reverse-midx' 2 years ago
pack.h Merge branch 'tb/reverse-midx' 2 years ago
packfile.c dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
packfile.h packfile: introduce 'find_kept_pack_entry()' 2 years ago
pager.c pager: refactor wait_for_pager() function 2 years ago
parallel-checkout.c ci: run test round with parallel-checkout enabled 1 year ago
parallel-checkout.h parallel-checkout: support progress displaying 1 year ago
parse-options-cb.c hash: provide per-algorithm null OIDs 1 year ago
parse-options.c parse-options: don't leak alias help messages 2 years ago
parse-options.h parse-options: don't leak alias help messages 2 years 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 t0060: test ntfs/hfs-obscured dotfiles 1 year ago
path.h merge-ort: write $GIT_DIR/AUTO_MERGE whenever we hit a conflict 2 years ago
pathspec.c Merge branch 'mt/add-rm-in-sparse-checkout' 1 year ago
pathspec.h Merge branch 'mt/add-rm-in-sparse-checkout' 1 year ago
pkt-line.c pkt-line: do not report packet write errors twice 1 year ago
pkt-line.h pkt-line: add options argument to read_packetized_to_strbuf() 2 years ago
preload-index.c preload-index: log the number of lstat calls to trace2 2 years ago
pretty.c pretty: provide human date format 1 year ago
pretty.h Merge branch 'rs/pretty-describe' 2 years ago
prio-queue.c prio-queue: add 'peek' operation 4 years ago
prio-queue.h *.[ch]: remove extern from function declarations using spatch 3 years ago
progress.c use CALLOC_ARRAY 2 years ago
progress.h progress.c: silence cgcc suggestion about internal linkage 2 years ago
promisor-remote.c use CALLOC_ARRAY 2 years ago
promisor-remote.h promisor-remote: remove unused variable 2 years ago
prompt.c interactive: explicitly `fflush` stdout before expecting input 3 years ago
prompt.h interactive: refactor code asking the user for interactive input 3 years ago
protocol-caps.c object-info: support for retrieving object info 1 year ago
protocol-caps.h object-info: support for retrieving object info 1 year ago
protocol.c protocol: re-enable v2 protocol by default 2 years ago
protocol.h *.[ch]: remove extern from function declarations using spatch 3 years ago
prune-packed.c Lib-ify prune-packed 3 years ago
prune-packed.h Lib-ify prune-packed 3 years ago
quote.c quote: make sq_dequote_step() a public function 2 years ago
quote.h quote: make sq_dequote_step() a public function 2 years ago
range-diff.c hash: provide per-algorithm null OIDs 1 year ago
range-diff.h Merge branch 'js/range-diff-one-side-only' 2 years ago
reachable.c Merge branch 'ps/rev-list-object-type-filter' 1 year ago
reachable.h *.[ch]: manually align parameter lists 3 years ago
read-cache.c Merge branch 'mt/parallel-checkout-part-3' 1 year ago
rebase-interactive.c rebase -i: clarify and fix 'fixup -c' rebase-todo help 2 years ago
rebase-interactive.h Merge branch 'en/rebase-backend' 3 years ago
rebase.c pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 3 years ago
rebase.h pull --rebase/remote rename: document and honor single-letter abbreviations rebase types 3 years ago
ref-filter.c Merge branch 'zh/ref-filter-push-remote-fix' 1 year ago
ref-filter.h ref-filter: get rid of show_ref_array_item 1 year ago
reflog-walk.c use CALLOC_ARRAY 2 years ago
reflog-walk.h *.[ch]: manually align parameter lists 3 years ago
refs.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
refs.h Merge branch 'tb/ls-refs-optim' 2 years 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 remote-curl: fix clone on sha256 repos 1 year ago
remote.c use CALLOC_ARRAY 2 years ago
remote.h Merge branch 'jt/clone-unborn-head' 2 years 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 sparse-index: add index.sparse config option 2 years ago
repository.c Merge branch 'ds/sparse-index-protections' 1 year ago
repository.h sparse-index: add index.sparse config option 2 years ago
rerere.c dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
rerere.h rerere.c: remove the_repository references 4 years ago
reset.c hash: provide per-algorithm null OIDs 1 year ago
reset.h reset: extract reset_head() from rebase 3 years ago
resolve-undo.c Merge branch 'ds/sparse-index-protections' 1 year ago
resolve-undo.h *.[ch]: remove extern from function declarations using spatch 3 years ago
revision.c Merge branch 'ah/plugleaks' 1 year ago
revision.h revision: mark commit parents as NOT_USER_GIVEN 1 year ago
run-command.c use CALLOC_ARRAY 2 years ago
run-command.h run-command: document use_shell option 2 years ago
send-pack.c send-pack: support push negotiation 1 year ago
send-pack.h Add missing includes and forward declarations 4 years ago
sequencer.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
sequencer.h sequencer: fix edit handling for cherry-pick and revert messages 2 years ago
serve.c object-info: support for retrieving object info 1 year ago
serve.h argv-array: rename to strvec 2 years ago
server-info.c use CALLOC_ARRAY 2 years ago
setup.c macOS: precompose startup_info->prefix 2 years ago
sh-i18n--envsubst.c cleanup: fix possible overflow errors in binary search, part 2 3 years 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 commit_graft_pos(): take an oid instead of a bare hash 2 years ago
shallow.h shallow: use struct 'shallow_lock' for additional safety 2 years ago
shell.c interactive: refactor code asking the user for interactive input 3 years ago
shortlog.h shortlog: remove unused(?) "repo-abbrev" feature 2 years ago
sideband.c Merge branch 'jk/sideband-more-error-checking' 2 years ago
sideband.h sideband: diagnose more sideband anomalies 2 years ago
sigchain.c Replace all die("BUG: ...") calls by BUG() ones 4 years ago
sigchain.h sigchain: move doc to sigchain.h 3 years ago
simple-ipc.h simple-ipc: correct ifdefs when NO_PTHREADS is defined 1 year ago
sparse-index.c Merge branch 'ds/sparse-index-protections' 1 year ago
sparse-index.h sparse-index: expand_to_path() 1 year ago
split-index.c Always use oidread to read into struct object_id 1 year ago
split-index.h split-index: convert struct split_index to object_id 4 years ago
stable-qsort.c Move git_sort(), a stable sort, into into libgit.a 3 years ago
strbuf.c mailinfo: also free strbuf lists when clearing mailinfo 1 year ago
strbuf.h Merge branch 'rs/retire-strbuf-write-fd' 2 years ago
streaming.c streaming.c: move {open,close,read} from vtable to "struct git_istream" 1 year ago
streaming.h streaming: allow open_istream() to handle any repo 3 years ago
string-list.c style: the opening '{' of a function is in a separate line 4 years ago
string-list.h Merge branch 'en/string-list-can-be-custom-sorted' into maint 3 years ago
strmap.c strmap: take advantage of FLEXPTR_ALLOC_STR when relevant 2 years ago
strmap.h strmap: make callers of strmap_remove() to call it in void context 2 years ago
strvec.c strvec: rename struct fields 2 years ago
strvec.h strvec: rename struct fields 2 years ago
sub-process.c strvec: convert remaining callers away from argv_array name 2 years ago
sub-process.h hashmap_entry: remove first member requirement from docs 3 years ago
submodule-config.c hash: provide per-algorithm null OIDs 1 year ago
submodule-config.h submodule-config: add skip_if_read option to repo_read_gitmodules() 3 years ago
submodule.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
submodule.h *: remove 'const' qualifier for struct index_state 1 year ago
symlinks.c checkout: don't follow symlinks when removing entries 2 years ago
tag.c gpg-interface: improve interface for parsing tags 2 years 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' 2 years ago
tempfile.h tempfile.c: introduce 'create_tempfile_mode' 2 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 packfile: prepare for the existence of '*.rev' files 2 years ago
tmp-objdir.h tmp-objdir: introduce API for temporary object directories 6 years ago
trace.c http, imap-send: stop using CURLOPT_VERBOSE 2 years ago
trace.h http, imap-send: stop using CURLOPT_VERBOSE 2 years ago
trace2.c trace2: add a public function for getting the SID 2 years ago
trace2.h trace2: add a public function for getting the SID 2 years ago
trailer.c trailer: add new .cmd config option 1 year ago
trailer.h pretty format %(trailers): add a "key_value_separator" 2 years ago
transport-helper.c fetch: teach independent negotiation (no packfile) 1 year ago
transport-internal.h connect, transport: encapsulate arg in struct 2 years ago
transport.c Merge branch 'jt/push-negotiation' 1 year ago
transport.h fetch: teach independent negotiation (no packfile) 1 year ago
tree-diff.c hash: provide per-algorithm null OIDs 1 year ago
tree-walk.c Always use oidread to read into struct object_id 1 year 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 13.0 3 years ago
unimplemented.sh unimplemented.sh: use the $( ... ) construct for command substitution 7 years ago
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 'mt/parallel-checkout-part-3' 1 year ago
unpack-trees.h stash show: teach --include-untracked and --only-untracked 2 years ago
upload-pack.c Merge branch 'jt/push-negotiation' 1 year ago
upload-pack.h argv-array: rename to strvec 2 years 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 credential: handle `credential.<partial-URL>.<key>` again 2 years ago
urlmatch.h credential: handle `credential.<partial-URL>.<key>` again 2 years ago
usage.c usage.c: don't copy/paste the same comment three times 1 year ago
userdiff.c Merge branch 'ab/userdiff-tests' 1 year ago
userdiff.h userdiff: add and use for_each_userdiff_driver() 2 years ago
utf8.c t0060: test ntfs/hfs-obscured dotfiles 1 year ago
utf8.h t0060: test ntfs/hfs-obscured dotfiles 1 year ago
varint.c cleanups: ensure that git-compat-util.h is included first 8 years ago
varint.h *.[ch]: remove extern from function declarations using spatch 3 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 config: don't include config.h by default 5 years ago
walker.c lookup_unknown_object(): take a repository argument 1 year 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 dir: introduce readdir_skip_dot_and_dotdot() helper 1 year ago
worktree.h worktree: teach worktree to lazy-load "prunable" reason 2 years ago
wrap-for-bin.sh Make running git under other debugger-like programs easy 5 years ago
wrapper.c add open_nofollow() helper 2 years ago
write-or-die.c fsync(): be prepared to see EINTR 1 year ago
ws.c Merge branch 'nd/the-index' 4 years ago
wt-status.c Merge branch 'bc/hash-transition-interop-part-1' 1 year ago
wt-status.h branch: sort detached HEAD based on a flag 2 years ago
xdiff-interface.c hash: provide per-algorithm null OIDs 1 year ago
xdiff-interface.h Fix spelling errors in code comments 3 years ago
zlib.c Replace all die("BUG: ...") calls by BUG() ones 4 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