Go to file
Junio C Hamano 184bd911fc Merge branch 'tc/replay-linearize' into jch
The 'git replay' command has been taught the '--linearize' option to
drop merge commits and linearize the replayed history, mimicking 'git
rebase --no-rebase-merges'.

* tc/replay-linearize:
  replay: offer an option to linearize the commit topology
  replay: resolve the replay base outside pick_regular_commit()
  replay: add helper to put entry into replayed_commits
2026-08-31 11:12:00 -07:00
.github Merge branch 'jk/ci-static-analysis-image-bump' 2026-08-05 11:10:51 -07:00
Documentation Merge branch 'tc/replay-linearize' into jch 2026-08-31 11:12:00 -07:00
bin-wrappers
block-sha1
builtin Merge branch 'tc/replay-linearize' into jch 2026-08-31 11:12:00 -07:00
ci Merge branch 'ps/reftable-hardening' 2026-07-19 10:42:15 -07:00
compat Merge branch 'js/coverity-unchecked-returns-fix' 2026-08-24 13:17:50 -07:00
compiler-tricks
contrib Merge branch 'ij/subtree-reject-v2-config' into jch 2026-08-31 11:12:00 -07:00
ewah
git-gui Merge branch 'master' of https://github.com/j6t/git-gui 2026-07-16 10:48:52 -07:00
gitk-git Merge branch 'master' of https://github.com/j6t/gitk 2026-07-16 10:47:40 -07:00
gitweb gitweb: shorten index hashes with trailing file modes 2026-07-17 09:12:59 -07:00
mergetools
negotiator prio-queue: rename .nr to .nr_ and add accessor helpers 2026-06-09 11:11:46 -07:00
odb Merge branch 'ps/odb-pluggable-pack-generation' 2026-08-31 08:25:00 -07:00
oss-fuzz Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
perl
po Merge branch 'spanish_pr_bis' of github.com:basuradeluis/gitkbis 2026-07-16 10:53:01 +02:00
refs Merge branch 'kn/reftable-optimize-reloading' into jch 2026-08-31 11:11:58 -07:00
reftable Merge branch 'kn/reftable-optimize-reloading' into jch 2026-08-31 11:11:58 -07:00
sha1 hash: add platform-specific discard functions 2026-07-02 09:50:47 -07:00
sha1collisiondetection@855827c583
sha1dc
sha256 hash: add platform-specific discard functions 2026-07-02 09:50:47 -07:00
src rust: discard hash context when finished 2026-07-19 16:26:09 -07:00
subprojects
t Merge branch 'tc/replay-linearize' into jch 2026-08-31 11:12:00 -07:00
templates
tools hash: convert remaining direct function calls 2026-07-07 21:56:00 -07:00
trace2 hash: use git_hash_init() consistently 2026-07-07 21:56:00 -07:00
xdiff Merge branch 'mm/diff-U-takes-no-negative-values' 2026-05-25 09:40:07 +09:00
.b4-config b4: introduce configuration for the Git project 2026-06-15 10:13:28 -07:00
.b4-cover-template b4: include change-id in cover template 2026-07-10 09:49:47 -07:00
.cirrus.yml
.clang-format
.editorconfig
.gitattributes Merge branch 'kw/gitattributes-typofix' 2026-06-21 16:41:37 -07:00
.gitignore Merge branch 'mm/git-url-parse' 2026-05-21 12:06:48 +09:00
.gitlab-ci.yml Merge branch 'jk/ci-static-analysis-image-bump' 2026-08-05 11:10:51 -07:00
.gitmodules
.mailmap mailmap: map Elijah Newren's current and previous work addresses 2026-08-12 13:16:46 -07:00
.tsan-suppressions transport-helper: fix TSAN race in transfer_debug() 2026-06-09 14:05:42 -07:00
CODE_OF_CONDUCT.md
COPYING
Cargo.toml
GIT-BUILD-OPTIONS.in
GIT-VERSION-FILE.in
GIT-VERSION-GEN Start Git 2.56 cycle 2026-07-06 15:50:25 -07:00
INSTALL
LGPL-2.1
Makefile Merge branch 'ps/writev' 2026-08-18 09:31:36 -07:00
README.md README: add GitLab CI badge to make it more discoverable 2026-07-06 07:21:57 -07:00
RelNotes Start Git 2.56 cycle 2026-07-06 15:50:25 -07:00
SECURITY.md
abspath.c
abspath.h
aclocal.m4
add-interactive.c
add-interactive.h
add-patch.c
add-patch.h
advice.c push: suggest <remote> <branch> for a slash slip 2026-06-27 19:36:43 -07:00
advice.h push: suggest <remote> <branch> for a slash slip 2026-06-27 19:36:43 -07:00
alias.c
alias.h
alloc.c
alloc.h
apply.c Merge branch 'ty/migrate-excludes-file' 2026-07-30 10:32:03 -07:00
apply.h
archive-tar.c odb/streaming: unify function names to create new streams 2026-08-05 09:42:50 -07:00
archive-zip.c Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
archive.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
archive.h
attr.c Merge branch 'ps/setup-drop-global-state' 2026-07-06 15:50:19 -07:00
attr.h
banned.h
base85.c
base85.h
bisect.c Merge branch 'js/coverity-unchecked-returns-fix' 2026-08-24 13:17:50 -07:00
bisect.h
blame.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
blame.h
blob.c
blob.h
bloom.c Merge branch 'jk/ci-static-analysis-image-bump' 2026-08-05 11:10:51 -07:00
bloom.h
branch.c Merge branch 'rs/branch-delete-bisect-warning' 2026-08-05 11:10:51 -07:00
branch.h branch: report active bisect run when rejecting delete 2026-07-25 09:22:03 -07:00
build.rs
builtin.h Merge branch 'mm/git-url-parse' 2026-05-21 12:06:48 +09:00
bundle-uri.c Merge branch 'ps/copy-wo-the-repository' 2026-07-27 09:09:00 -07:00
bundle-uri.h
bundle.c bundle: generate packfiles via the object database 2026-08-21 09:01:55 -07:00
bundle.h bundle: generate packfiles via the object database 2026-08-21 09:01:55 -07:00
cache-tree.c odb/transaction: add transaction finalize interface 2026-08-20 20:28:01 -07:00
cache-tree.h
cbtree.c cbtree: allow using arbitrary wrapper structures for nodes 2026-05-15 04:50:45 +09:00
cbtree.h cbtree: allow using arbitrary wrapper structures for nodes 2026-05-15 04:50:45 +09:00
chdir-notify.c chdir-notify.h: Removed unused param 'name' 2026-08-14 15:08:35 -07:00
chdir-notify.h chdir-notify.h: Removed unused param 'name' 2026-08-14 15:08:35 -07:00
checkout.c checkout: improve message for ambiguous remote branch name 2026-08-27 10:29:43 -07:00
checkout.h checkout: improve message for ambiguous remote branch name 2026-08-27 10:29:43 -07:00
chunk-format.c
chunk-format.h
color.c
color.h
column.c
column.h
combine-diff.c Merge branch 'ty/migrate-trust-executable-bit' 2026-07-30 10:32:02 -07:00
command-list.txt Merge branch 'mm/git-url-parse' 2026-05-21 12:06:48 +09:00
commit-graph.c odb: eagerly initialize alternates 2026-08-17 09:36:10 -07:00
commit-graph.h doc: fix typos via codespell 2026-06-08 00:21:35 +09:00
commit-reach.c Merge branch 'kk/merge-base-exhaustion' 2026-08-23 18:01:46 -07:00
commit-reach.h commit-reach: reject cycles in contains walk 2026-06-12 15:56:44 -07:00
commit-slab-decl.h
commit-slab-impl.h
commit-slab.h
commit.c Merge branch 'kk/prio-queue-get-put-fusion' 2026-07-13 08:27:27 -07:00
commit.h Merge branch 'kk/streaming-walk-pqueue' 2026-06-16 09:01:02 -07:00
common-exit.c
common-init.c repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
common-init.h
common-main.c
config.c Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
config.h pack-objects: widen delta-cache accounting to `size_t` 2026-08-13 09:42:02 -07:00
config.mak.dev Merge branch 'ps/clang-w-glibc-2.43-and-_Generic' into maint-2.54 2026-05-21 12:23:51 +09:00
config.mak.in
config.mak.uname compat/posix: introduce writev(3p) wrapper 2026-08-07 08:57:25 -07:00
configure.ac
connect.c Merge branch 'ps/cat-file-remote-object-info' 2026-07-30 10:32:04 -07:00
connect.h connect: make write_fetch_command_and_capabilities() more generic 2026-07-24 08:46:59 -07:00
connected.c connected: search promisor objects generically 2026-06-25 13:20:20 -07:00
connected.h
convert.c hex: add and use strbuf_add_oid_hex() 2026-05-14 15:59:25 +09:00
convert.h
copy.c copy: drop dependency on `the_repository` 2026-07-16 14:10:08 -07:00
copy.h copy: drop dependency on `the_repository` 2026-07-16 14:10:08 -07:00
credential.c
credential.h
csum-file.c Merge branch 'jk/hash-algo-leak-fixes' 2026-07-16 23:05:47 -07:00
csum-file.h Merge branch 'jk/hash-algo-leak-fixes' 2026-07-16 23:05:47 -07:00
ctype.c
daemon.c Merge branch 'st/daemon-sockaddr-fixes' 2026-06-11 04:31:17 -07:00
date.c docs: fix typos 2026-06-05 22:27:24 +09:00
date.h
decorate.c
decorate.h
delta-islands.c docs: fix typos and grammar 2026-05-30 07:07:27 +09:00
delta-islands.h
delta.h delta: widen `create_delta()` and `diff_delta()` to `size_t` 2026-08-13 09:42:02 -07:00
diagnose.c
diagnose.h
diff-delta.c delta: widen `create_delta()` and `diff_delta()` to `size_t` 2026-08-13 09:42:02 -07:00
diff-lib.c Merge branch 'jk/diff-relative-cached-unmerged-more' 2026-08-07 14:48:00 -07:00
diff-merges.c
diff-merges.h
diff-no-index.c
diff.c Merge branch 'en/diff-l-opt-help' 2026-08-24 13:17:51 -07:00
diff.h diff: reject negative values for -U/--unified 2026-05-13 10:13:26 +09:00
diffcore-break.c diffcore-break: guard against NULLed queue entries in merge loop 2026-07-10 08:13:54 -07:00
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c docs: fix typos and grammar 2026-05-30 07:07:27 +09:00
diffcore-rename.c
diffcore-rotate.c
diffcore.h
dir-iterator.c
dir-iterator.h
dir.c Merge branch 'ty/migrate-excludes-file' 2026-07-30 10:32:03 -07:00
dir.h ignore: note info/exclude lives in GIT_COMMON_DIR, not GIT_DIR 2026-05-13 10:25:52 +09:00
editor.c environment: move editor_program into repo_config_values 2026-07-14 07:30:23 -07:00
editor.h
entry.c Merge branch 'ty/migrate-trust-executable-bit' 2026-07-30 10:32:02 -07:00
entry.h
environment.c Merge branch 'ty/migrate-excludes-file' 2026-07-30 10:32:03 -07:00
environment.h Merge branch 'ty/migrate-excludes-file' 2026-07-30 10:32:03 -07:00
exec-cmd.c
exec-cmd.h
fetch-negotiator.c
fetch-negotiator.h negotiator: add have_sent() interface 2026-05-20 11:33:24 +09:00
fetch-object-info.c fetch-object-info: parse type from server response 2026-08-07 18:50:08 -07:00
fetch-object-info.h fetch-object-info: parse type from server response 2026-08-07 18:50:08 -07:00
fetch-pack.c Merge branch 'jt/receive-pack-pluggable-writes' 2026-08-31 08:25:00 -07:00
fetch-pack.h fetch: add --negotiation-include option for negotiation 2026-05-20 11:33:24 +09:00
fmt-merge-msg.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
fmt-merge-msg.h
for-each-ref.h
fsck.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
fsck.h
fsmonitor--daemon.h
fsmonitor-ipc.c
fsmonitor-ipc.h
fsmonitor-ll.h
fsmonitor-path-utils.h
fsmonitor-settings.c
fsmonitor-settings.h
fsmonitor.c config: use repo_ignore_case() to access core.ignorecase 2026-06-19 10:04:56 -07:00
fsmonitor.h
gettext.c
gettext.h
git-archimport.perl
git-compat-util.h environment: move has_symlinks into repo_config_values 2026-07-20 07:37:05 -07:00
git-curl-compat.h
git-cvsexportcommit.perl
git-cvsimport.perl
git-cvsserver.perl
git-difftool--helper.sh
git-filter-branch.sh
git-instaweb.sh
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh
git-mergetool.sh
git-p4.py
git-quiltimport.sh
git-request-pull.sh
git-send-email.perl send-email: clarify missing subject error 2026-08-10 14:07:02 -07:00
git-sh-i18n.sh
git-sh-setup.sh
git-submodule.sh
git-svn.perl
git-web--browse.sh
git-zlib.c git-zlib: widen `git_deflate_bound()` to `size_t` 2026-08-13 09:42:03 -07:00
git-zlib.h git-zlib: widen `git_deflate_bound()` to `size_t` 2026-08-13 09:42:03 -07:00
git.c Merge branch 'ty/repository-fetch-if-missing' into jch 2026-08-31 11:11:58 -07:00
git.rc.in
gpg-interface.c gpg-interface: fix strip_cr_before_lf to only remove CR before LF 2026-06-24 09:49:05 -07:00
gpg-interface.h
graph.c graph: add --[no-]graph-indent and log.graphIndent 2026-07-14 07:32:51 -07:00
graph.h graph: add a 2 commit buffer for lookahead 2026-07-14 07:32:51 -07:00
grep.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
grep.h
hash-lookup.c
hash-lookup.h
hash.c hash: check ctx->active flag in all wrapper functions 2026-07-07 21:56:00 -07:00
hash.h hash: make git_hash_discard() idempotent 2026-07-07 21:56:00 -07:00
hashmap.c
hashmap.h
help.c Merge branch 'jh/alias-i18n-fixes' into maint-2.54 2026-05-21 12:30:11 +09:00
help.h
hex-ll.c
hex-ll.h
hex.c hex: add and use strbuf_add_oid_hex() 2026-05-14 15:59:25 +09:00
hex.h hex: add and use strbuf_add_oid_hex() 2026-05-14 15:59:25 +09:00
hook.c
hook.h Merge branch 'ak/typofixes' 2026-06-15 07:42:00 -07:00
http-backend.c setup: stop using `the_repository` in `enter_repo()` 2026-05-19 19:36:24 +09:00
http-fetch.c http: accept HTTP 416 for complete partial packs 2026-07-27 12:57:20 -07:00
http-push.c Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
http-walker.c http: accept HTTP 416 for complete partial packs 2026-07-27 12:57:20 -07:00
http.c Merge branch 'js/coverity-unchecked-returns-fix' 2026-08-24 13:17:50 -07:00
http.h Merge branch 'jk/hash-algo-leak-fixes' 2026-07-16 23:05:47 -07:00
ident.c
ident.h
imap-send.c imap-send: avoid leaking the IMAP upload buffer 2026-07-05 09:12:10 -07:00
iterator.h
json-writer.c
json-writer.h
khash.h
kwset.c
kwset.h
levenshtein.c
levenshtein.h
line-log.c Merge branch 'jk/bloom-leak-fixes' 2026-07-15 13:24:19 -07:00
line-log.h line-log: integrate -L output with the standard log-tree pipeline 2026-05-29 14:06:21 +09:00
line-range.c
line-range.h
linear-assignment.c
linear-assignment.h
list-objects-filter-options.c setup: stop using `the_repository` in `upgrade_repository_format()` 2026-05-19 19:36:25 +09:00
list-objects-filter-options.h
list-objects-filter.c list-objects-filter: add list_objects_filter__filter_oidset() 2026-08-13 13:34:49 -07:00
list-objects-filter.h list-objects-filter: add list_objects_filter__filter_oidset() 2026-08-13 13:34:49 -07:00
list-objects.c
list-objects.h
list.h
lockfile.c lockfile: add repo_hold_lock_file_for_update{,_timeout}{,_mode}() 2026-07-14 12:54:25 -07:00
lockfile.h lockfile: add repo_hold_lock_file_for_update{,_timeout}{,_mode}() 2026-07-14 12:54:25 -07:00
log-tree.c log: improve --follow following renames for non-linear history 2026-06-22 05:45:09 -07:00
log-tree.h log: improve --follow following renames for non-linear history 2026-06-22 05:45:09 -07:00
loose.c Merge branch 'ps/odb-make-creation-pluggable' 2026-08-20 07:30:52 -07:00
loose.h setup: detangle loading of loose object maps 2026-08-06 21:24:25 -07:00
ls-refs.c
ls-refs.h
mailinfo.c
mailinfo.h
mailmap.c Merge branch 'ps/setup-drop-global-state' 2026-07-06 15:50:19 -07:00
mailmap.h
match-trees.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
match-trees.h
mem-pool.c
mem-pool.h
merge-blobs.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
merge-blobs.h odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
merge-ll.c add: introduce '--resolved' option 2026-07-31 08:52:16 -07:00
merge-ll.h add: introduce '--resolved' option 2026-07-31 08:52:16 -07:00
merge-ort-wrappers.c
merge-ort-wrappers.h
merge-ort.c Merge branch 'en/ort-harden-against-corrupt-trees' 2026-07-06 15:50:20 -07:00
merge-ort.h
merge.c
merge.h
mergesort.h
meson.build Merge branch 'ps/writev' 2026-08-18 09:31:36 -07:00
meson_options.txt Merge branch 'ps/reftable-hardening' 2026-07-19 10:42:15 -07:00
midx-write.c repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
midx.c odb/source-packed: flag known-bad objects as corrupt and not missing 2026-08-19 10:23:02 -07:00
midx.h odb/source-packed: flag known-bad objects as corrupt and not missing 2026-08-19 10:23:02 -07:00
name-hash.c config: use repo_ignore_case() to access core.ignorecase 2026-06-19 10:04:56 -07:00
name-hash.h
notes-cache.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
notes-cache.h
notes-merge.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
notes-merge.h
notes-utils.c
notes-utils.h
notes.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
notes.h
object-file-convert.c
object-file-convert.h
object-file.c Merge branch 'jt/receive-pack-pluggable-writes' 2026-08-31 08:25:00 -07:00
object-file.h odb/streaming: rename `struct odb_read_stream` 2026-08-05 09:42:50 -07:00
object-name.c Merge branch 'ps/odb-eagerly-load-alternates' 2026-08-31 08:24:59 -07:00
object-name.h
object.c odb/streaming: unify function names to create new streams 2026-08-05 09:42:50 -07:00
object.h commit-reach: deduplicate queue entries in paint_down_to_common 2026-05-26 07:17:26 +09:00
odb.c Merge branch 'ty/repository-fetch-if-missing' into jch 2026-08-31 11:11:58 -07:00
odb.h Merge branch 'ty/repository-fetch-if-missing' into jch 2026-08-31 11:11:58 -07:00
oid-array.c
oid-array.h
oidmap.c
oidmap.h
oidset.c
oidset.h
oidtree.c oidtree: add ability to store data 2026-05-15 04:50:45 +09:00
oidtree.h oidtree: add ability to store data 2026-05-15 04:50:45 +09:00
pack-bitmap-write.c Merge branch 'kk/prio-queue-get-put-fusion' 2026-07-13 08:27:27 -07:00
pack-bitmap.c odb: eagerly initialize alternates 2026-08-17 09:36:10 -07:00
pack-bitmap.h odb: introduce object filters to `odb_for_each_object()` 2026-07-15 07:19:16 -07:00
pack-check.c Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
pack-mtimes.c
pack-mtimes.h
pack-objects.c
pack-objects.h pack-objects: use size_t for in-core object sizes 2026-06-15 07:45:41 -07:00
pack-refs.c
pack-refs.h
pack-revindex.c midx: refactor interfaces to work on "packed" source 2026-06-17 05:00:01 -07:00
pack-revindex.h
pack-write.c builtin/receive-pack: properly clean up keep files 2026-08-20 20:28:01 -07:00
pack.h builtin/receive-pack: properly clean up keep files 2026-08-20 20:28:01 -07:00
packfile-list.c packfile: fix perf regression with many packs 2026-08-13 09:45:46 -07:00
packfile-list.h packfile: fix perf regression with many packs 2026-08-13 09:45:46 -07:00
packfile.c Merge branch 'ps/odb-eagerly-load-alternates' 2026-08-31 08:24:59 -07:00
packfile.h Merge branch 'ps/odb-eagerly-load-alternates' 2026-08-31 08:24:59 -07:00
pager.c environment: move pager_program into repo_config_values 2026-07-14 07:30:23 -07:00
pager.h
parallel-checkout.c
parallel-checkout.h
parse-options-cb.c
parse-options.c parse-options: introduce OPT_HIDDEN_GROUP 2026-08-11 07:33:16 -07:00
parse-options.h parse-options: introduce OPT_HIDDEN_GROUP 2026-08-11 07:33:16 -07:00
parse.c pack-objects: widen delta-cache accounting to `size_t` 2026-08-13 09:42:02 -07:00
parse.h pack-objects: widen delta-cache accounting to `size_t` 2026-08-13 09:42:02 -07:00
patch-delta.c packfile,delta: drop the `cast_size_t_to_ulong()` wrappers 2026-06-15 07:45:41 -07:00
patch-ids.c
patch-ids.h patch-ids.h: add missing trailing parenthesis in documentation comment 2026-05-15 04:24:54 +09:00
path-walk.c Merge branch 'kk/prio-queue-get-put-fusion' 2026-07-13 08:27:27 -07:00
path-walk.h path-walk: support `object:type` filter 2026-05-24 18:41:07 +09:00
path.c path: extract format_path() and use in rev-parse 2026-06-23 21:15:52 -07:00
path.h Merge branch 'jk/repo-info-path-keys' 2026-07-06 15:50:23 -07:00
pathspec.c pathspec: use match for sparse-index expansion checks 2026-07-21 10:33:14 -07:00
pathspec.h
pkt-line.c
pkt-line.h
preload-index.c
preload-index.h
pretty.c Merge branch 'rs/strbuf-add-oid-hex' 2026-06-09 10:04:50 +09:00
pretty.h
prio-queue.c prio-queue: fold lazy_queue into prio_queue for automatic get+put fusion 2026-06-09 11:11:46 -07:00
prio-queue.h prio-queue: fold lazy_queue into prio_queue for automatic get+put fusion 2026-06-09 11:11:46 -07:00
progress.c
progress.h
promisor-remote.c Merge branch 'cc/promisor-auto-config-url-more' 2026-07-06 15:50:19 -07:00
promisor-remote.h promisor-remote: document caller filtering contract 2026-05-15 04:24:54 +09:00
prompt.c environment: move askpass_program into repo_config_values 2026-07-14 07:30:23 -07:00
prompt.h
protocol-caps.c protocol-caps: add type support to object-info 2026-08-07 18:50:08 -07:00
protocol-caps.h
protocol.c
protocol.h
prune-packed.c
prune-packed.h
pseudo-merge.c pack-bitmap: prevent pattern leak on pseudo-merge re-assignment 2026-05-12 10:36:18 +09:00
pseudo-merge.h
quote.c quote: simplify internals of dequoting 2026-05-19 12:14:03 +09:00
quote.h quote: drop sq_dequote_to_argv() 2026-05-19 12:14:03 +09:00
range-diff.c
range-diff.h
reachable.c Merge branch 'ps/refs-wo-the-repository' 2026-07-27 09:08:59 -07:00
reachable.h
read-cache-ll.h read-cache: add remove_file_from_index_with_flags() 2026-07-31 08:52:16 -07:00
read-cache.c Merge branch 'jt/receive-pack-pluggable-writes' 2026-08-31 08:25:00 -07:00
read-cache.h environment: move has_symlinks into repo_config_values 2026-07-20 07:37:05 -07:00
rebase-interactive.c
rebase-interactive.h
rebase.c
rebase.h
ref-filter.c branch: add --forked filter for --list mode 2026-08-05 10:08:27 -07:00
ref-filter.h branch: add --forked filter for --list mode 2026-08-05 10:08:27 -07:00
reflog-walk.c
reflog-walk.h
reflog.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
reflog.h
refs.c refs: remove remaining uses of `the_repository` 2026-07-16 07:40:22 -07:00
refs.h refs: remove remaining uses of `the_repository` 2026-07-16 07:40:22 -07:00
refspec.c refspec: stop depending on `the_repository` 2026-07-16 13:58:25 -07:00
refspec.h refspec: stop depending on `the_repository` 2026-07-16 13:58:25 -07:00
remote-curl.c remote-curl: simplify passing of push specs 2026-07-15 14:13:47 -07:00
remote.c Merge branch 'en/submodule-insteadof-remote-match' 2026-08-03 09:31:30 -07:00
remote.h remote: find tracking branches for URL push destinations 2026-07-22 11:29:49 -07:00
repack-cruft.c
repack-filtered.c builtin/repack: enumerate promisor blobs for --drop-filtered 2026-08-13 13:34:49 -07:00
repack-geometry.c midx: refactor interfaces to work on "packed" source 2026-06-17 05:00:01 -07:00
repack-midx.c Merge branch 'rs/tempfile-wo-the-repository' 2026-07-30 10:32:02 -07:00
repack-promisor.c repack-promisor: allow excluding objects from the rebuilt promisor pack 2026-08-13 13:34:49 -07:00
repack.c midx: refactor interfaces to work on "packed" source 2026-06-17 05:00:01 -07:00
repack.h builtin/repack: enumerate promisor blobs for --drop-filtered 2026-08-13 13:34:49 -07:00
replace-object.c
replace-object.h
replay.c replay: offer an option to linearize the commit topology 2026-08-31 10:29:06 -07:00
replay.h replay: offer an option to linearize the commit topology 2026-08-31 10:29:06 -07:00
repo-settings.c refs: move parsing of "core.logAllRefUpdates" back into ref stores 2026-06-26 08:27:19 -07:00
repo-settings.h refs: move parsing of "core.logAllRefUpdates" back into ref stores 2026-06-26 08:27:19 -07:00
repository.c Merge branch 'ty/repository-fetch-if-missing' into jch 2026-08-31 11:11:58 -07:00
repository.h repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
rerere.c Merge branch 'jc/add-resolved' 2026-08-15 09:20:27 -07:00
rerere.h
reset.c reset: stop assuming that the caller passes in a clean index 2026-07-03 10:32:47 -07:00
reset.h reset: allow the caller to specify the current HEAD object 2026-07-03 10:32:47 -07:00
resolve-undo.c
resolve-undo.h
revision.c repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
revision.h graph: add --[no-]graph-indent and log.graphIndent 2026-07-14 07:32:51 -07:00
run-command.c run-command: avoid `close(-1)` in `start_command()` error paths 2026-07-05 09:12:09 -07:00
run-command.h Merge branch 'pt/fsmonitor-linux' 2026-05-31 10:00:38 +09:00
sane-ctype.h
scalar.c setup: stop using `the_repository` in `setup_git_directory()` 2026-05-19 19:36:25 +09:00
send-pack.c send-pack: generate packfiles via the object database 2026-08-21 09:01:54 -07:00
send-pack.h send-pack: pass negotiation config in push 2026-05-20 11:33:24 +09:00
sequencer.c Merge branch 'en/sequencer-lose-pretty-given' 2026-08-24 13:17:50 -07:00
sequencer.h Merge branch 'pw/status-rebase-todo' 2026-07-06 15:50:23 -07:00
serve.c Merge branch 'en/serve-promisor-remote-fix' 2026-08-24 13:17:51 -07:00
serve.h
server-info.c
server-info.h
setup.c Merge branch 'yn/worktree-repair-relative' into jch 2026-08-31 11:11:59 -07:00
setup.h worktree repair: detect relative path in .git file correctly 2026-08-28 10:22:04 -07:00
sh-i18n--envsubst.c
sha1dc_git.c hash algorithms: use size_t for section lengths 2026-06-16 09:02:33 -07:00
sha1dc_git.h hash algorithms: use size_t for section lengths 2026-06-16 09:02:33 -07:00
shallow.c Merge branch 'js/coverity-fixes-null-safety' 2026-07-19 10:42:20 -07:00
shallow.h setup: unify setup of shallow file 2026-07-07 10:49:40 -07:00
shared.mak
shell.c
shortlog.h
sideband.c Merge branch 'ps/writev' 2026-08-18 09:31:36 -07:00
sideband.h
sigchain.c
sigchain.h
simple-ipc.h
sparse-index.c sparse-index: avoid crash on intent-to-add entry outside the cone 2026-07-06 07:49:10 -07:00
sparse-index.h
split-index.c
split-index.h
stable-qsort.c
statinfo.c environment: move "check_stat" into `struct repo_config_values` 2026-06-03 08:36:48 +09:00
statinfo.h
strbuf.c strbuf: avoid redundant reset in strbuf_getwholeline() 2026-07-14 09:35:02 -07:00
strbuf.h strbuf: add strbuf_add_uint() 2026-05-13 00:48:42 +09:00
string-list.c
string-list.h
strmap.c
strmap.h
strvec.c
strvec.h
sub-process.c sub-process: use gentle handshake to avoid die() on startup failure 2026-06-02 07:48:57 +09:00
sub-process.h
submodule-config.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
submodule-config.h
submodule.c Merge branch 'ps/refs-wo-the-repository' 2026-07-27 09:08:59 -07:00
submodule.h
symlinks.c
symlinks.h
tag.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
tag.h
tar.h
tempfile.c tempfile: stop using the_repository 2026-07-14 12:54:25 -07:00
tempfile.h tempfile: stop using the_repository 2026-07-14 12:54:25 -07:00
thread-utils.c
thread-utils.h
tmp-objdir.c Merge branch 'jt/receive-pack-pluggable-writes' 2026-08-31 08:25:00 -07:00
tmp-objdir.h odb: return temporary ODB source when set 2026-08-20 20:28:02 -07:00
trace.c setup: move prefix into repository 2026-07-07 10:49:40 -07:00
trace.h
trace2.c
trace2.h
trailer.c trailers: stop recognizing URLs as trailers 2026-08-21 08:53:27 -07:00
trailer.h
transport-helper.c Merge branch 'js/coverity-unchecked-returns-fix' 2026-08-24 13:17:50 -07:00
transport-internal.h transport: drop remote object-info fields from transport struct 2026-08-07 18:50:08 -07:00
transport.c Merge branch 'ps/cat-file-remote-object-info-type' 2026-08-23 18:01:42 -07:00
transport.h transport: drop remote object-info fields from transport struct 2026-08-07 18:50:08 -07:00
tree-diff.c
tree-walk.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
tree-walk.h docs: fix typos and grammar 2026-05-30 07:07:27 +09:00
tree.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
tree.h
unicode-width.h
unimplemented.sh
unix-socket.c
unix-socket.h
unix-stream-server.c
unix-stream-server.h
unpack-trees.c Merge branch 'ty/migrate-ignorecase' 2026-07-19 10:42:19 -07:00
unpack-trees.h
upload-pack.c upload-pack: generate packfiles via the object database 2026-08-21 09:01:54 -07:00
upload-pack.h
url.c
url.h
urlmatch.c urlmatch: add url_normalize_pattern() helper 2026-05-28 05:20:15 +09:00
urlmatch.h urlmatch: add url_normalize_pattern() helper 2026-05-28 05:20:15 +09:00
usage.c Merge branch 'jc/you-still-use-that' into jch 2026-08-31 11:11:59 -07:00
userdiff.c userdiff: add support for Swift 2026-07-23 07:14:34 -07:00
userdiff.h
utf8.c
utf8.h
varint.c
varint.h
version-def.h.in
version.c
version.h
versioncmp.c
versioncmp.h
walker.c prio-queue: rename .nr to .nr_ and add accessor helpers 2026-06-09 11:11:46 -07:00
walker.h
wildmatch.c
wildmatch.h
worktree.c worktree repair: detect relative path in .git file correctly 2026-08-28 10:22:04 -07:00
worktree.h worktree: pass repository to public functions 2026-07-16 07:40:22 -07:00
wrapper.c wrapper: properly handle MAX_IO_SIZE in writev(3p) 2026-08-07 08:57:25 -07:00
wrapper.h wrapper: properly handle MAX_IO_SIZE in writev(3p) 2026-08-07 08:57:25 -07:00
write-or-die.c wrapper: introduce writev(3p) wrappers 2026-08-07 08:57:25 -07:00
write-or-die.h wrapper: introduce writev(3p) wrappers 2026-08-07 08:57:25 -07:00
ws.c
ws.h
wt-status.c wt-status: avoid repeated insertion for untracked paths 2026-07-19 16:21:33 -07:00
wt-status.h
xdiff-interface.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
xdiff-interface.h

README.md

GitHub build status GitLab 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.adoc to get started, then see Documentation/giteveryday.adoc for a useful minimum set of commands, and Documentation/git-<commandname>.adoc 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.adoc (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 to git+subscribe@vger.kernel.org (see https://subspace.kernel.org/subscribing.html for details). The mailing list archives are available at https://lore.kernel.org/git/, https://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