1
0
Fork 0
mirror of https://github.com/git-for-windows/git.git synced 2026-09-24 02:12:49 +00:00
Mirror of git-for-windows/git for key.store Windows runner toolcache artifacts.
  • C 50.1%
  • Shell 39.5%
  • Perl 4.3%
  • Tcl 3%
  • Python 0.7%
  • Other 2.1%
Find a file
Johannes Schindelin 6f712333fa Merge 'readme' into HEAD
Add a README.md for GitHub goodness.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2026-09-22 21:01:28 +02:00
.github Merge 'readme' into HEAD 2026-09-22 21:01:28 +02:00
bin-wrappers
block-sha1
builtin Merge branch 'phase-out-reset-stdin' 2026-09-22 21:01:28 +02:00
ci ci: only run the expensive tests in the Windows tests for now 2026-09-22 21:01:27 +02:00
compat compat/fsmonitor/fsm-*-win32: support long paths 2026-09-22 21:01:27 +02:00
compiler-tricks intialize false_but_the_compiler_does_not_know_it_ 2025-05-07 09:11:47 -07:00
contrib mingw: add a cache below mingw's lstat and dirent implementations 2026-09-22 21:01:26 +02:00
Documentation Merge branch 'deprecate-core.useBuiltinFSMonitor' 2026-09-22 21:01:28 +02:00
ewah cocci: extend MEMZERO_ARRAY() rules 2026-02-03 09:41:52 -08:00
git-gui git-gui--askyesno (mingw): use Git for Windows' icon, if available 2026-09-22 21:01:26 +02:00
gitk-git Merge branch 'master' of https://github.com/j6t/gitk 2026-09-11 09:03:58 -07:00
gitweb gitweb: shorten index hashes with trailing file modes 2026-07-17 09:12:59 -07:00
mergetools doc: update references to renamed AsciiDoc files 2025-06-06 15:05:47 -07:00
negotiator prio-queue: rename .nr to .nr_ and add accessor helpers 2026-06-09 11:11:46 -07:00
odb mingw: support unpacking loose 4GB+ objects 2026-09-22 20:58:05 +02:00
oss-fuzz Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
perl contrib: better support symbolic port names in git-credential-netrc 2025-06-25 09:43:59 -07:00
po Merge branch 'spanish_pr_bis' of github.com:basuradeluis/gitkbis 2026-07-16 10:53:01 +02:00
refs Merge pull request #1897 from piscisaureus/symlink-attr 2026-09-22 21:01:25 +02:00
reftable Merge branch 'kn/reftable-optimize-reloading' 2026-09-07 09:32:05 -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: respect CARGO_BUILD_TARGET when locating build output 2026-09-10 06:37:09 -07:00
subprojects meson: wire up gitk and git-gui 2026-02-04 09:42:50 -08:00
t Merge branch 'phase-out-reset-stdin' 2026-09-22 21:01:28 +02:00
templates Merge branch 'pt/fsmonitor-watchman-sample-fix' 2026-03-10 14:23:23 -07:00
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 ci: update FreeBSD image to 14.3 2025-07-01 07:46:22 -07:00
.clang-format clang-format: exclude control macros from SpaceBeforeParens 2025-09-28 08:37:23 -07:00
.editorconfig editorconfig: fix style not applying to subdirs anymore 2026-03-11 10:30:51 -07:00
.gitattributes Add an AGENTS.md file to help with AI-assisted debugging/development 2026-09-22 21:01:27 +02:00
.gitignore Add experimental 'git survey' builtin (#5174) 2026-09-22 21:01:25 +02:00
.gitlab-ci.yml Merge branch 'jk/ci-bump-debian-to-12' 2026-09-11 09:45:10 -07:00
.gitmodules
.mailmap mailmap: normalize name for Yoichi NAKAYAMA 2026-09-17 09:43:13 -07:00
.tsan-suppressions transport-helper: fix TSAN race in transfer_debug() 2026-06-09 14:05:42 -07:00
abspath.c strbuf_realpath(): use platform-dependent API if available 2026-09-22 20:58:01 +02:00
abspath.h
aclocal.m4
add-interactive.c add-patch: allow disabling editing of hunks 2026-03-03 15:09:36 -08:00
add-interactive.h add-patch: split out struct interactive_options 2026-03-03 15:09:35 -08:00
add-patch.c Merge branch 'sp/add-patch-with-fewer-the-repository' 2026-04-07 14:59:26 -07:00
add-patch.h add-patch: allow disabling editing of hunks 2026-03-03 15:09:36 -08:00
advice.c Merge branch 'deprecate-core.useBuiltinFSMonitor' 2026-09-22 21:01:28 +02:00
advice.h Merge branch 'deprecate-core.useBuiltinFSMonitor' 2026-09-22 21:01:28 +02:00
AGENTS.md Add an AGENTS.md file to help with AI-assisted debugging/development 2026-09-22 21:01:27 +02:00
alias.c alias: restore support for simple dotted aliases 2026-04-25 19:22:52 +09:00
alias.h
alloc.c alloc: fix dangling pointer in alloc_state cleanup 2025-09-04 15:24:16 -07:00
alloc.h alloc: fix dangling pointer in alloc_state cleanup 2025-09-04 15:24:16 -07:00
apply.c Introduce helper to create symlinks that knows about index_state 2026-09-22 20:58:03 +02:00
apply.h apply: report input location in header parsing errors 2026-03-17 11:08:24 -07:00
ARCHITECTURE.md Describe Git for Windows' architecture 2026-09-22 21:01:27 +02:00
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 read-cache: stop truncating index blob sizes on Windows 2026-09-22 20:58:04 +02:00
attr.h
banned.h banned.h: ban mktemp(3) 2025-12-07 07:28:13 +09:00
base85.c
base85.h
bisect.c Merge branch 'js/coverity-unchecked-returns-fix' 2026-08-24 13:17:50 -07:00
bisect.h rev-list: make "struct rev_list_info" static to the only user 2025-07-21 15:40:46 -07:00
blame.c blame: widen struct blame_scoreboard.final_buf_size to size_t 2026-09-22 20:58:04 +02:00
blame.h blame: widen struct blame_scoreboard.final_buf_size to size_t 2026-09-22 20:58:04 +02:00
blob.c
blob.h
bloom.c Merge branch 'jk/ci-static-analysis-image-bump' 2026-08-05 11:10:51 -07:00
bloom.h bloom: replace struct bloom_key * with struct bloom_keyvec 2025-07-14 10:03:03 -07:00
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 rust: add a build.rs script for tests 2026-02-07 17:41:03 -08:00
builtin.h survey: stub in new experimental 'git-survey' command 2026-09-22 20:58:02 +02:00
bundle-uri.c bundle-uri: refuse advertised URIs by protocol 2026-09-22 20:58:05 +02: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 cache-tree: remove dependency on the_repository 2026-09-11 08:46:09 -07:00
cache-tree.h cache-tree: remove dependency on the_repository 2026-09-11 08:46:09 -07:00
Cargo.toml ci: verify minimum supported Rust version 2025-10-15 08:10:17 -07:00
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
CODE_OF_CONDUCT.md Modify the Code of Conduct for Git for Windows 2026-09-22 21:01:27 +02:00
color.c color: add color_parse_quietly() 2026-02-23 13:23:41 -08:00
color.h color: add color_parse_quietly() 2026-02-23 13:23:41 -08:00
column.c
column.h
combine-diff.c combine-diff: stop truncating combined-diff blob sizes on Windows 2026-09-22 20:58:04 +02:00
command-list.txt survey: stub in new experimental 'git-survey' command 2026-09-22 20:58:02 +02: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 commit: widen the commit-buffer API to size_t 2026-09-22 20:58:04 +02:00
commit.h commit: widen the commit-buffer API to size_t 2026-09-22 20:58:04 +02:00
common-exit.c common-main.c: fflush stdout buffer upon exit 2026-09-22 20:58:02 +02:00
common-init.c repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
common-init.h common-main: split init and exit code into new files 2025-01-28 14:39:16 -08:00
common-main.c common-main.c: fflush stdout buffer upon exit 2025-02-06 19:32:58 +01:00
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 build: tolerate use of _Generic from glibc 2.43 with Clang 2026-06-11 09:37:04 +02:00
config.mak.in
config.mak.uname mingw: add a cache below mingw's lstat and dirent implementations 2026-09-22 21:01:26 +02:00
configure.ac Merge branch 'rj/freebsd-sysinfo-build-fix' 2025-07-14 11:19:28 -07:00
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
CONTRIBUTING.md CONTRIBUTING.md: add guide for first-time contributors 2026-09-22 21:01:27 +02:00
convert.c read-cache: stop truncating index blob sizes on Windows 2026-09-22 20:58:04 +02: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
COPYING
credential.c credential: advertise NTLM suppression and allow helpers to re-enable 2026-09-22 20:58:03 +02:00
credential.h credential: advertise NTLM suppression and allow helpers to re-enable 2026-09-22 20:58:03 +02:00
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: fix sign comparison warnings 2025-03-10 13:21:13 -07:00
decorate.h
delta-islands.c docs: fix typos and grammar 2026-05-30 07:07:27 +09:00
delta-islands.h delta-islands: stop depending on the_repository 2025-03-10 13:16:20 -07:00
delta.h delta: widen create_delta() and diff_delta() to size_t 2026-08-13 09:42:02 -07:00
diagnose.c odb: get rid of the_repository in for_each() functions 2025-07-01 14:46:36 -07:00
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 --no-index: fix logic for paths ending in '/' 2025-10-16 15:21:06 +02:00
diff.c diffcore: widen struct diff_filespec.size to size_t 2026-09-22 20:58:04 +02:00
diff.h diff: widen textconv_object() size out-param to size_t 2026-09-22 20:58:04 +02: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 cocci: extend MEMZERO_ARRAY() rules 2026-02-03 09:41:52 -08:00
diffcore-order.c
diffcore-pickaxe.c docs: fix typos and grammar 2026-05-30 07:07:27 +09:00
diffcore-rename.c merge,diff: remove the_repository check before prefetching blobs 2026-02-21 18:34:06 -08:00
diffcore-rotate.c
diffcore.h diffcore: widen struct diff_filespec.size to size_t 2026-09-22 20:58:04 +02:00
dir-iterator.c refs/iterator: separate lifecycle from iteration 2025-03-12 11:31:18 -07:00
dir-iterator.h refs/iterator: separate lifecycle from iteration 2025-03-12 11:31:18 -07:00
dir.c dir.c: regression fix for add_excludes with fscache 2026-09-22 21:01:26 +02: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 Partially un-revert "editor: save and reset terminal after calling EDITOR" 2026-09-22 21:01:27 +02:00
editor.h
entry.c checkout.c: enable fscache for checkout again 2026-09-22 21:01:26 +02: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 fscache: fscache takes an initial size 2026-09-22 21:01:26 +02: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 environment: remove the global variable 'merge_log_config' 2025-08-11 09:16:55 -07:00
for-each-ref.h Merge branch 'ja/doc-lint-sections-and-synopsis' 2025-08-25 14:22:02 -07:00
fsck.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
fsck.h fsck: store repository in fsck options 2026-03-23 08:33:10 -07:00
fsmonitor--daemon.h
fsmonitor-ipc.c fsmonitor: close inherited file descriptors and detach in daemon 2026-04-15 08:44:33 -07:00
fsmonitor-ipc.h
fsmonitor-ll.h
fsmonitor-path-utils.h
fsmonitor-settings.c fsmonitor: reintroduce core.useBuiltinFSMonitor 2026-09-22 21:01:27 +02:00
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-BUILD-OPTIONS.in GIT-BUILD-OPTIONS: propagate project's source directory 2025-02-18 11:40:02 -08:00
git-compat-util.h fscache: update fscache to be thread specific instead of global 2026-09-22 21:01:26 +02:00
git-curl-compat.h http: optionally send SSL client certificate 2026-09-22 20:58:01 +02:00
git-cvsexportcommit.perl
git-cvsimport.perl
git-cvsserver.perl cvsserver: remove unused escapeRefName function 2025-05-27 08:25:08 -07:00
git-difftool--helper.sh
git-filter-branch.sh filter-branch: stop depending on Perl 2025-04-16 07:30:29 -07:00
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 request-pull: stop depending on Perl 2025-04-16 07:30:29 -07:00
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 mingw: only use Bash-ism builtin pwd -W when available 2026-09-22 21:01:27 +02:00
git-submodule.sh
git-svn.perl fixup! git-svn: mark it as unsupported by the Git for Windows project 2026-03-24 14:45:25 +01:00
GIT-VERSION-FILE.in
GIT-VERSION-GEN Git 2.56-rc2 2026-09-22 05:36:33 -07:00
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 survey: stub in new experimental 'git-survey' command 2026-09-22 20:58:02 +02:00
git.rc.in ARM64: Embed manifest properly (#4718) 2026-09-22 21:01:24 +02:00
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 fast-import: add 'abort-if-invalid' mode to '--signed-commits=<mode>' 2026-03-26 12:42:57 -07:00
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 Merge branch 'size-t/grep' 2026-09-22 20:58:04 +02:00
grep.h grep: widen struct grep_source.size and grep_buffer() to size_t 2026-09-22 20:58:04 +02:00
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 git-compat-util: introduce MEMZERO_ARRAY() macro 2025-12-11 14:44:43 +09:00
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 run-command: limit concurrent children to what poll() can wait on 2026-09-22 21:01:26 +02:00
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 'disallow-ntlm-auth-by-default' 2026-09-22 21:01:25 +02:00
http.h Merge branch 'jk/hash-algo-leak-fixes' 2026-07-16 23:05:47 -07:00
ident.c Merge branch 'ps/reflog-migrate-fixes' into maint-2.51 2025-10-15 10:29:28 -07:00
ident.h ident: fix type of string length parameter 2025-08-06 07:36:30 -07:00
imap-send.c Merge branch 'wf/imap-send-draft' 2026-09-14 14:02:52 -07:00
INSTALL
iterator.h refs/iterator: separate lifecycle from iteration 2025-03-12 11:31:18 -07:00
json-writer.c json-writer: add docstrings to jw_* functions 2025-05-16 09:33:06 -07:00
json-writer.h json-writer: describe the usage of jw_* functions 2025-05-16 09:33:07 -07:00
khash.h
kwset.c kwset: avoid using the comma operator unnecessarily 2025-03-28 17:38:09 -07:00
kwset.h
levenshtein.c
levenshtein.h
LGPL-2.1
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 cocci: use MEMZERO_ARRAY() a bit more 2025-12-13 10:47:59 +09:00
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-options: support 'auto' mode for --filter 2026-02-17 11:46:40 -08:00
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 odb: rename odb_has_object() flags 2026-03-31 20:43:14 -07:00
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 refs: generalize refs_for_each_fullref_in_prefixes() 2026-02-23 13:21:18 -08:00
ls-refs.h
mailinfo.c Merge branch 'vp/http-rate-limit-retries' 2026-04-01 10:28:18 -07:00
mailinfo.h
mailmap.c Merge branch 'ps/setup-drop-global-state' 2026-07-06 15:50:19 -07:00
mailmap.h mailmap: drop global config variables 2026-02-20 08:13:58 -08:00
Makefile test-tool: learn to act as a drop-in replacement for iconv 2026-09-22 21:01:27 +02:00
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: add GIT_TRACE_MEMPOOL support 2026-09-22 21:01:26 +02:00
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 commit: rename free_commit_list() to conform to coding guidelines 2026-01-15 05:32:31 -08:00
merge-ort-wrappers.h merge-recursive.[ch]: thoroughly debug these 2025-04-08 13:59:13 -07:00
merge-ort.c Merge branch 'en/ort-harden-against-corrupt-trees' 2026-07-06 15:50:20 -07:00
merge-ort.h merge-ort: add a new mergeability_only option 2025-05-16 15:09:14 -07:00
merge.c cocci: convert parse_tree functions to repo_ variants 2026-01-09 18:36:18 -08:00
merge.h
mergesort.h
meson.build mingw: add a cache below mingw's lstat and dirent implementations 2026-09-22 21:01:26 +02:00
meson_options.txt mingw: rely on MSYS2's metadata instead of hard-coding it 2026-09-11 14:47:15 +02:00
midx-write.c repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
midx.c packfile: recover when a multi-pack-index names a removed pack 2026-08-30 13:37:42 -07:00
midx.h packfile: recover when a multi-pack-index names a removed pack 2026-08-30 13:37:42 -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 commit: rename free_commit_list() to conform to coding guidelines 2026-01-15 05:32:31 -08:00
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 Merge branch 'bc/sha1-256-interop-02' 2026-03-12 10:56:02 -07:00
object-file-convert.h object-file-convert: stop depending on the_repository 2025-03-10 13:16:19 -07:00
object-file.c object-file: use size_t for object size in check_object_signature() 2026-09-22 20:58:05 +02:00
object-file.h object-file: use size_t for object size in check_object_signature() 2026-09-22 20:58:05 +02:00
object-name.c Merge branch 'ps/odb-eagerly-load-alternates' 2026-08-31 08:24:59 -07:00
object-name.h object-name: turn INTERPRET_BRANCH_* constants into enum values 2026-03-18 12:52:29 -07:00
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 mingw: handle staging 4GB+ files correctly 2026-09-22 20:58:05 +02:00
odb.h mingw: handle staging 4GB+ files correctly 2026-09-22 20:58:05 +02:00
oid-array.c
oid-array.h
oidmap.c oidmap: make entry cleanup explicit in oidmap_clear 2026-03-05 11:16:18 -08:00
oidmap.h oidmap: make entry cleanup explicit in oidmap_clear 2026-03-05 11:16:18 -08:00
oidset.c oidset: introduce oidset_equal() 2025-11-25 12:15:59 -08:00
oidset.h oidset: introduce oidset_equal() 2025-11-25 12:15:59 -08:00
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 pack-bitmap: stop truncating blob sizes used by --filter=blob:limit 2026-09-22 20:58:03 +02:00
pack-bitmap.h builtin/fsck: move bitmap verification into the packed source 2026-09-11 09:14:44 -07:00
pack-check.c Merge branch 'js/pack-objects-delta-size-t' 2026-08-24 13:17:51 -07:00
pack-mtimes.c object-store: rename files to "odb.{c,h}" 2025-07-01 14:46:34 -07:00
pack-mtimes.h
pack-objects.c Merge branch 'ps/remove-packfile-store-get-packs' 2025-10-30 08:00:19 -07:00
pack-objects.h pack-objects: use size_t for in-core object sizes 2026-06-15 07:45:41 -07:00
pack-refs.c refs: rename 'pack_refs_opts' to 'refs_optimize_opts' 2025-11-04 07:35:12 -08:00
pack-refs.h builtin/pack-refs: factor out core logic into a shared library 2025-09-19 10:02:55 -07:00
pack-revindex.c midx: refactor interfaces to work on "packed" source 2026-06-17 05:00:01 -07:00
pack-revindex.h midx: fix BUG() when getting preferred pack without a reverse index 2025-12-11 12:09:58 +09:00
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: limit worker count to what poll() can wait on 2026-09-22 21:01:26 +02:00
parallel-checkout.h
parse-options-cb.c color: use git_colorbool enum type to store colorbools 2025-09-16 17:59:53 -07:00
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: document intentional const-casting in patch_id_neq() 2026-03-09 12:45:19 -07:00
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 Merge branch 'dont-clean-junctions' 2026-09-22 21:01:25 +02:00
path.h clean: do not traverse mount points 2026-09-22 20:58:03 +02:00
pathspec.c Merge branch 'jc/pathspec-match-const' 2026-09-13 21:53:29 -07:00
pathspec.h pathspec: match and original in pathspec_item are const 2026-09-03 11:24:01 -07:00
pkt-line.c global: constify some pointers that are not written to 2026-02-05 17:52:49 -08:00
pkt-line.h pkt-line: make packet_reader.line non-const 2026-04-01 22:08:52 -07:00
preload-index.c fscache: update fscache to be thread specific instead of global 2026-09-22 21:01:26 +02:00
preload-index.h
pretty.c Merge branch 'rs/strbuf-add-oid-hex' 2026-06-09 10:04:50 +09:00
pretty.h color: use git_colorbool enum type to store colorbools 2025-09-16 17:59:53 -07:00
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: pay attention to (customized) delay time 2025-08-25 15:50:17 -07:00
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 Merge branch 'jc/string-list-split' 2025-08-21 13:46:59 -07:00
protocol.h
prune-packed.c object-file: get rid of the_repository in loose object iterators 2025-07-16 22:16:17 -07:00
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 Merge branch 'tb/bitamp-typofix' 2025-04-07 14:23:20 -07:00
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: drop const to fix strstr() warnings 2026-04-01 22:08:53 -07:00
range-diff.h range-diff: rename other_arg to log_arg 2025-09-25 11:34:11 -07:00
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: stop truncating index blob sizes on Windows 2026-09-22 20:58:04 +02:00
read-cache.c fscache: fscache takes an initial size 2026-09-22 21:01:26 +02:00
read-cache.h environment: move has_symlinks into repo_config_values 2026-07-20 07:37:05 -07:00
README.md README.md: Add a Windows-specific preamble 2026-09-22 21:01:27 +02:00
rebase-interactive.c config: drop git_config_get_value() wrapper 2025-07-23 08:15:18 -07:00
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 global: constify some pointers that are not written to 2026-02-05 17:52:49 -08:00
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 Merge branch 'ps/remote-rename-fix' 2025-08-21 13:46:58 -07:00
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
RelNotes Start Git 2.56 cycle 2026-07-06 15:50: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 packfile: introduce macro to iterate through packs 2025-10-16 14:42:39 -07:00
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 refs: introduce wrapper struct for each_ref_fn 2025-11-04 07:32:24 -08:00
replace-object.h object-store: rename files to "odb.{c,h}" 2025-07-01 14:46:34 -07:00
replay.c Merge branch 'en/midx-missing-pack-fallback' 2026-09-10 05:36:17 -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 status: fix for old-style submodules with commondir 2026-09-22 20:58:02 +02:00
repository.h repository: move fetch_if_missing into struct repository 2026-08-15 08:37:54 -07:00
rerere.c builtin/maintenance: improve heuristic for "rerere gc" 2026-09-04 07:27:14 -07:00
rerere.h builtin/maintenance: improve heuristic for "rerere gc" 2026-09-04 07:27:14 -07:00
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 Merge branch 'jk/rev-info-argv-to-free' 2026-09-10 05:36:17 -07:00
revision.h revision: hang on to "freed" argv elements 2026-09-01 11:03:56 -07:00
run-command.c run-command: limit concurrent children to what poll() can wait on 2026-09-22 21:01:26 +02:00
run-command.h run-command: limit concurrent children to what poll() can wait on 2026-09-22 21:01:26 +02:00
sane-ctype.h sane-ctype: fix compiler error on Amazon Linux 2 2025-07-10 11:18:37 -07:00
scalar.c setup: stop using the_repository in setup_git_directory() 2026-05-19 19:36:25 +09:00
SECURITY.md SECURITY.md: document Git for Windows' policies 2026-09-22 21:01:27 +02:00
send-pack.c transport: optionally disable side-band-64k 2026-09-22 20:58:01 +02:00
send-pack.h send-pack: pass negotiation config in push 2026-05-20 11:33:24 +09:00
sequencer.c Merge branch 'ps/odb-stop-registering-in-memory-sources' 2026-09-15 11:07:36 -07:00
sequencer.h Merge branch 'hn/checkout-m-autostash-refine' 2026-09-14 14:02:53 -07:00
serve.c Merge branch 'en/serve-promisor-remote-fix' 2026-08-24 13:17:51 -07:00
serve.h
server-info.c Merge branch 'ps/ref-peeled-tags' 2025-11-19 10:55:39 -08:00
server-info.h
setup.c mingw: support long paths 2026-09-22 21:01:27 +02: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-29 19:06:14 +02:00
sha1dc_git.h hash algorithms: use size_t for section lengths 2026-06-29 19:06:14 +02: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 Makefile: introduce infrastructure to build internal Rust library 2025-10-02 09:32:31 -07:00
shell.c
shortlog.h
sideband.c Merge branch 'ps/writev' 2026-08-18 09:31:36 -07:00
sideband.h sideband: offer to configure sanitizing on a per-URL basis 2026-03-06 13:52:28 -08:00
sigchain.c
sigchain.h
simple-ipc.h simple-ipc.h: *.txt -> *.adoc fixes 2025-03-03 13:49:25 -08:00
sparse-index.c cache-tree: drop the_repository in cache_tree_fully_valid() 2026-09-11 08:46:09 -07:00
sparse-index.h
split-index.c split-index: stop using the_repository and the_hash_algo 2026-03-19 12:01:24 -07:00
split-index.h
stable-qsort.c
stash.h stash: reserve exit status 1 for conflicts 2026-09-03 11:32:36 -07:00
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 hook: move unsorted_string_list_remove() to string-list.[ch] 2026-03-25 14:00:45 -07:00
string-list.h hook: move unsorted_string_list_remove() to string-list.[ch] 2026-03-25 14:00:45 -07:00
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 doc: update references to renamed AsciiDoc files 2025-06-06 15:05:47 -07:00
submodule-config.c submodule-config: stop registering submodule sources 2026-09-11 08:46:10 -07:00
submodule-config.h submodule-config: remove uses of the_repository 2026-09-11 08:46:10 -07:00
submodule.c run-command: limit concurrent children to what poll() can wait on 2026-09-22 21:01:26 +02:00
submodule.h odb: get rid of the_repository when handling submodule sources 2025-07-01 14:46:37 -07:00
symlinks.c symlinks: use unsigned int for flags 2026-02-20 15:03:42 -08:00
symlinks.h symlinks: use unsigned int for flags 2026-02-20 15:03:42 -08:00
tag.c odb: use size_t for object_info.sizep and the size APIs 2026-06-15 07:45:41 -07:00
tag.h tag: support arbitrary repositories in parse_tag() 2025-12-29 22:02:54 +09:00
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 win32: thread-utils: handle multi-socket systems 2026-09-22 20:58:03 +02:00
thread-utils.h
tmp-objdir.c tmp-objdir: drop unused function to register alternate 2026-09-11 08:46:10 -07:00
tmp-objdir.h tmp-objdir: drop unused function to register alternate 2026-09-11 08:46:10 -07:00
trace.c setup: move prefix into repository 2026-07-07 10:49:40 -07:00
trace.h
trace2.c trace2: prevent segfault on config collection where no value specified 2025-02-06 19:32:40 +01:00
trace2.h trace2.h: *.txt -> *.adoc fixes 2025-03-03 13:49:26 -08:00
trailer.c trailers: stop recognizing URLs as trailers 2026-08-21 08:53:27 -07:00
trailer.h commit, tag: parse --trailer with OPT_STRVEC 2026-03-06 13:02:20 -08:00
transport-helper.c Always auto-gc after calling a fast-import transport 2026-09-22 20:58:01 +02: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-diff: remove the usage of the_hash_algo global 2026-02-20 10:21:11 -08:00
tree-walk.c tree-walk: widen init_tree_desc() and init_tree_desc_gently() to size_t 2026-09-22 20:58:04 +02:00
tree-walk.h tree-walk: widen init_tree_desc() and init_tree_desc_gently() to size_t 2026-09-22 20:58:04 +02:00
tree.c tree: widen struct tree.size and parse_tree_buffer() to size_t 2026-09-22 20:58:04 +02:00
tree.h tree: widen struct tree.size and parse_tree_buffer() to size_t 2026-09-22 20:58:04 +02:00
unicode-width.h unicode: update the width tables to Unicode 17 2025-10-21 10:03:00 -07:00
unimplemented.sh
unix-socket.c unix-socket: avoid leak when initialization fails 2026-09-22 20:57:05 +02:00
unix-socket.h
unix-stream-server.c
unix-stream-server.h
unpack-trees.c unpack-trees: enable fscache for sparse-checkout 2026-09-22 21:01:26 +02: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: return URL_SCHEME_UNKNOWN instead of dying 2026-05-06 09:48:27 +09:00
url.h url: return URL_SCHEME_UNKNOWN instead of dying 2026-05-06 09:48:27 +09:00
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' 2026-09-07 09:32:05 -07:00
userdiff.c userdiff: add support for Swift 2026-07-23 07:14:34 -07:00
userdiff.h
utf8.c utf8.c: prepare workaround for iconv under macOS 14/15 2026-01-12 12:00:04 -08:00
utf8.h
varint.c varint: use explicit width for integers 2025-10-02 09:32:32 -07:00
varint.h varint: use explicit width for integers 2025-10-02 09:32:32 -07:00
version-def.h.in
version.c version: stop using the_repository 2026-02-08 15:16:49 -08:00
version.h version: stop using the_repository 2026-02-08 15:16:49 -08:00
versioncmp.c versioncmp: fix typo in versioncmp.c, t/t0022-crlf-rename.sh 2026-08-31 13:47:04 -07:00
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: avoid using of the comma operator 2025-03-28 17:38:11 -07:00
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 apply: check and fix incomplete lines 2025-11-12 14:04:04 -08:00
ws.h whitespace: allocate a few more bits and define WS_INCOMPLETE_LINE 2025-11-12 14:04:04 -08:00
wt-status.c commit: accept "scissors" with CR/LF line endings 2026-09-22 20:58:01 +02:00
wt-status.h commit: clarify FROM_REBASE_PICK and is_from_rebase() names 2026-09-01 21:24:33 -07:00
xdiff-interface.c xdiff-interface: widen buffer_is_binary() size parameter to size_t 2026-09-22 20:58:04 +02:00
xdiff-interface.h xdiff-interface: widen buffer_is_binary() size parameter to size_t 2026-09-22 20:58:04 +02:00

Git for Windows

Contributor Covenant Open in Visual Studio Code Build status Join the chat at https://gitter.im/git-for-windows/git

This is Git for Windows, the Windows port of Git.

The Git for Windows project is run using a governance model. If you encounter problems, you can report them as GitHub issues, discuss them in Git for Windows' Discussions or on the Git mailing list, and contribute bug fixes.

To build Git for Windows, please either install Git for Windows' SDK, start its git-bash.exe, cd to your Git worktree and run make, or open the Git worktree as a folder in Visual Studio.

To verify that your build works, use one of the following methods:

  • If you want to test the built executables within Git for Windows' SDK, prepend <worktree>/bin-wrappers to the PATH.

  • Alternatively, run make install in the Git worktree.

  • If you need to test this in a full installer, run sdk build git-and-installer.

  • You can also "install" Git into an existing portable Git via make install DESTDIR=<dir> where <dir> refers to the top-level directory of the portable Git. In this instance, you will want to prepend that portable Git's /cmd directory to the PATH, or test by running that portable Git's git-bash.exe or git-cmd.exe.

  • If you built using a recent Visual Studio, you can use the menu item Build>Install git (you will want to click on Project>CMake Settings for Git first, then click on Edit JSON and then point installRoot to the mingw64 directory of an already-unpacked portable Git).

    As in the previous bullet point, you will then prepend /cmd to the PATH or run using the portable Git's git-bash.exe or git-cmd.exe.

  • If you want to run the built executables in-place, but in a CMD instead of inside a Bash, you can run a snippet like this in the git-bash.exe window where Git was built (ensure that the EOF line has no leading spaces), and then paste into the CMD window what was put in the clipboard:

    clip.exe <<EOF
    set GIT_EXEC_PATH=$(cygpath -aw .)
    set PATH=$(cygpath -awp ".:contrib/scalar:/mingw64/bin:/usr/bin:$PATH")
    set GIT_TEMPLATE_DIR=$(cygpath -aw templates/blt)
    set GITPERLLIB=$(cygpath -aw perl/build/lib)
    EOF
    
  • If you want to run the built executables in-place, but outside of Git for Windows' SDK, and without an option to set/override any environment variables (e.g. in Visual Studio's debugger), you can call the Git executable by its absolute path and use the --exec-path option, like so:

    C:\git-sdk-64\usr\src\git\git.exe --exec-path=C:\git-sdk-64\usr\src\git help
    

    Note: for this to work, you have to hard-link (or copy) the .dll files from the /mingw64/bin directory to the Git worktree, or add the /mingw64/bin directory to the PATH somehow or other.

To make sure that you are testing the correct binary, call ./git.exe version in the Git worktree, and then call git version in a directory/window where you want to test Git, and verify that they refer to the same version (you may even want to pass the command-line option --build-options to look at the exact commit from which the Git version was built).

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 core 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. The core git mailing list is plain text (no HTML!).

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