Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
341 commits
Select commit Hold shift + click to select a range
2d35f40
hash algorithms: use size_t for section lengths
PhilipOakley Nov 12, 2021
e054438
http: optionally load libcurl lazily
dscho May 6, 2023
eadb1fd
.gitignore: add Visual Studio CMakeSetting.json file
PhilipOakley Apr 24, 2021
2dc3666
hash-object --stdin: verify that it works with >4GB/LLP64
PhilipOakley Dec 6, 2021
2509bdf
http: support lazy-loading libcurl also on Windows
dscho May 7, 2023
2101a75
subtree: update `contrib/subtree` `test` target
vdye Aug 5, 2021
55b815b
CMakeLists: add default "x64-windows" arch for Visual Studio
PhilipOakley Apr 22, 2021
0052404
hash-object: add another >4GB/LLP64 test case
PhilipOakley Dec 6, 2021
2bf2b16
setup: properly use "%(prefix)/" when in WSL
derrickstolee Apr 13, 2022
e9118a9
http: when loading libcurl lazily, allow for multiple SSL backends
dscho May 7, 2023
ef96b49
cmake(): allow setting HOST_CPU for cross-compilation
dennisameling Jul 19, 2021
3f23450
mingw: allow for longer paths in `parse_interpreter()`
dscho Apr 2, 2021
ba4d090
compat/vcbuild: document preferred way to build in Visual Studio
dscho May 17, 2021
4ca4449
http: optionally send SSL client certificate
pascalmuller Jun 23, 2021
7591f2e
ci: run `contrib/subtree` tests in CI builds
vdye Aug 5, 2021
8ddb77c
CMake: show Win32 and Generator_platform build-option values
PhilipOakley May 10, 2021
d799f8a
init: do parse _all_ core.* settings early
dscho Sep 8, 2021
1afd87b
hash-object: add a >4GB/LLP64 test case using filtered input
PhilipOakley Dec 7, 2021
f7cc31c
compat/mingw.c: do not warn when failing to get owner
derrickstolee Apr 13, 2022
c1670fe
mingw: $env:TERM="xterm-256color" for newer OSes
rkitover Apr 12, 2022
c8b4ea7
winansi: check result and Buffer before using Name
1480c1 May 28, 2022
caf0d14
Add config option `windows.appendAtomically`
sunzhuoshi Jan 15, 2022
cdc3f9f
mingw: change core.fsyncObjectFiles = 1 by default
dscho Sep 4, 2017
5ab942a
MinGW: link as terminal server aware
rimrul Jul 10, 2022
77ede14
Fix Windows version resources
Mortein Nov 2, 2022
34225d4
status: fix for old-style submodules with commondir
sceptical-coder Oct 28, 2022
34b3cde
windows: skip linking `git-<command>` for built-ins
dscho Jan 27, 2023
e051e7b
mingw: do load libcurl dynamically by default
dscho May 7, 2023
634a2d1
Add a GitHub workflow to verify that Git/Scalar work in Nano Server
dscho Nov 2, 2022
6f965a2
survey: stub in new experimental 'git-survey' command
Apr 29, 2024
5bcbd5b
survey: add command line opts to select references
Apr 29, 2024
64f817c
survey: start pretty printing data in table form
derrickstolee Sep 1, 2024
b5fab08
survey: add object count summary
derrickstolee Sep 2, 2024
b954863
survey: summarize total sizes by object type
derrickstolee Sep 2, 2024
785f938
survey: show progress during object walk
derrickstolee Sep 2, 2024
8401902
mingw: make sure `errno` is set correctly when socket operations fail
dscho Nov 14, 2019
036fcf7
survey: add ability to track prioritized lists
derrickstolee Sep 2, 2024
dd868d6
compat/mingw: handle WSA errors in strerror
rimrul Dec 22, 2024
7c5095d
survey: add report of "largest" paths
derrickstolee Sep 2, 2024
c248965
compat/mingw: drop outdated comment
rimrul Dec 22, 2024
6e4588d
survey: add --top=<N> option and config
derrickstolee Sep 23, 2024
96f3f69
t0301: actually test credential-cache on Windows
rimrul Dec 29, 2024
22a84f5
mingw: suggest `windows.appendAtomically` in more cases
dsl101 Jul 28, 2023
0c213dc
win32: use native ANSI sequence processing, if possible
dscho Nov 22, 2023
0b185a4
git.rc: include winuser.h
rimrul Dec 2, 2023
e97535e
common-main.c: fflush stdout buffer upon exit
chengzhuo5 Apr 8, 2024
1149316
t5601/t7406(mingw): do run tests with symlink support
dscho Apr 9, 2024
b926891
win32: ensure that `localtime_r()` is declared even in i686 builds
dscho May 21, 2024
a9c6883
Fallback to AppData if XDG_CONFIG_HOME is unset
ariellourenco Jul 2, 2024
f4efffa
run-command: be helpful with Git LFS fails on Windows 7
dscho Jul 4, 2024
0520a99
revision: create mark_trees_uninteresting_dense()
derrickstolee Sep 6, 2024
29f3d07
survey: clearly note the experimental nature in the output
dscho Jul 1, 2024
c3beaf2
credential-cache: handle ECONNREFUSED gracefully
rimrul Dec 22, 2024
5a9fe98
max_tree_depth: lower it for clangarm64 on Windows
dscho Apr 15, 2025
03403d8
ci: work around a problem with HTTP/2 vs libcurl v8.10.0
dscho Sep 24, 2024
ed99b75
Merge 'remote-hg-prerequisites' into HEAD
dscho Jun 8, 2018
cf82e82
Merge branch 'drive-prefix'
dscho Jun 8, 2018
eaed530
Merge branch 'dont-clean-junctions'
dscho Jul 30, 2019
2ecd3f6
Merge branch 'msys2-python'
dscho May 31, 2019
f30c929
Merge branch 'mimalloc-v2.2.3'
dscho Sep 8, 2022
22f51f1
Merge pull request #2375 from assarbad/reintroduce-sideband-config
dscho Oct 30, 2019
0234f61
Merge pull request #2449 from dscho/mingw-getcwd-and-symlinks
dscho Jan 3, 2020
935e1dc
Merge pull request #2488 from bmueller84/master
dscho Jan 22, 2020
df5b277
Merge pull request #2501 from jeffhostetler/clink-debug-curl
dscho Jan 30, 2020
2c91d68
Merge pull request #2504 from dscho/access-repo-via-junction
dscho Feb 1, 2020
c148671
Merge pull request #2506 from dscho/issue-2283
dscho Feb 11, 2020
5b78925
Merge pull request #2535 from dscho/schannel-revoke-best-effort
dscho Mar 4, 2020
b56778e
reftable: do make sure to use custom allocators
dscho Mar 6, 2025
f93cffb
check-whitespace: avoid alerts about upstream commits
dscho Jun 3, 2025
71b367e
mingw: avoid the comma operator
dscho Jun 5, 2025
9d9b947
wincred: Avoid memory corruption
elieux Oct 3, 2025
99d5e15
cmake: stop trying to build the reftable and xdiff libraries
dscho Oct 27, 2025
27329ca
ci(dockerized): do show the result of failing tests again
dscho Nov 3, 2025
d982c6d
Merge pull request #2618 from dscho/avoid-d/f-conflict-in-vs/master
dscho May 9, 2020
c84d223
Merge 'add-p-many-files'
dscho Jun 8, 2018
1a3f856
Merge pull request #2714 from lbonanomi/crlf-scissors
dscho Jul 3, 2020
592668c
Merge pull request #2655 from jglathe/jg/t0014_trace_extra_info
dscho Oct 9, 2020
9bfe690
Merge 'git-gui/js/intent-to-add'
dscho Oct 18, 2020
db0e5a0
Merge pull request #2974 from derrickstolee/maintenance-and-headless
dscho Jan 11, 2021
f61ce97
cmake: install headless-git. (#4338)
dscho Mar 13, 2023
dfa9830
Merge pull request #2351 from PhilipOakley/vcpkg-tip
dscho Oct 7, 2019
d225310
Merge pull request #2915 from dennisameling/windows-arm64-support
dscho Dec 9, 2020
09d9921
Merge pull request #3327 from dennisameling/fix-host-cpu
dscho Jul 19, 2021
f929423
Merge pull request #3165 from dscho/increase-allowed-length-of-interp…
dscho Apr 3, 2021
b16ce14
Merge pull request #3220 from dscho/there-is-no-vs/master-anymore
dscho May 17, 2021
4270716
Merge pull request #3293 from pascalmuller/http-support-automatically…
dscho Jun 24, 2021
a406f02
Merge pull request #3349 from vdye/feature/ci-subtree-tests
dscho Aug 10, 2021
60e37fb
Merge pull request #3306 from PhilipOakley/vs-sln
dscho Oct 12, 2021
5320188
Merge pull request #3417 from dscho/initialize-core.symlinks-earlier
dscho Oct 13, 2021
c33fb37
Merge pull request #3533 from PhilipOakley/hashliteral_t
dscho Dec 15, 2021
fadd9f1
Merge pull request #3791: Various fixes around `safe.directory`
derrickstolee Apr 13, 2022
263aa07
Merge pull request #3751 from rkitover/native-term
dscho Apr 21, 2022
07105e4
Merge pull request #3875 from 1480c1/wine/detect_msys_tty
dscho May 30, 2022
5dab97d
Merge branch 'optionally-dont-append-atomically-on-windows'
dscho Jun 23, 2022
85b4ac3
Merge branch 'fsync-object-files-always'
dscho Oct 11, 2018
df411c0
Merge pull request #3942 from rimrul/mingw-tsaware
dscho Jul 27, 2022
4106673
Fix Windows version resources (#4092)
dscho Nov 3, 2022
cd1d7a8
Fix global repository field not being cleared (#4083)
dscho Dec 20, 2022
37edea0
Skip linking the "dashed" `git-<command>`s for built-ins (#4252)
dscho Jan 31, 2023
f4734be
Lazy load libcurl, allowing for an SSL/TLS backend-specific libcurl (…
dscho May 15, 2023
22605ba
Merge branch 'nano-server'
dscho Aug 7, 2023
9862e2d
Additional error checks for issuing the windows.appendAtomically warn…
dscho Aug 7, 2023
8e01dc3
win32: use native ANSI sequence processing, if possible (#4700)
dscho Dec 2, 2023
4aec7e6
ARM64: Embed manifest properly (#4718)
dscho Dec 7, 2023
c1b1b20
common-main.c: fflush stdout buffer when exit (#4901)
dscho Apr 12, 2024
8e61a8e
Merge branch 'run-t5601-and-t7406-with-symlinks-on-windows-10'
dscho Jul 12, 2024
6f5cf67
Merge branch 'Fix-i686-build-with-GCC-v14'
dscho Jul 12, 2024
4ca83e9
Merge branch 'Fallback-to-AppData-if-XDG-CONFIG-HOME-is-unset'
dscho Jul 12, 2024
ff35c3c
Merge branch 'run-command-be-helpful-when-Git-LFS-fails-on-Windows-7'
dscho Jul 12, 2024
b79b37e
pack-objects: create new name-hash algorithm (#5157)
dscho Sep 24, 2024
40421ad
Add path walk API and its use in 'git pack-objects' (#5171)
derrickstolee Sep 25, 2024
1ad434d
Add experimental 'git survey' builtin (#5174)
dscho Sep 26, 2024
c96b1d4
credential-cache: handle ECONNREFUSED gracefully (#5329)
dscho Jan 1, 2025
0eac66a
clangarm64: let the tests pass! (#5586)
dscho Apr 21, 2025
2c5b5db
Merge branch 'reftable-vs-custom-allocators'
dscho Jun 2, 2025
c066e1a
Merge branch 'check-whitespace-only-downstream'
dscho Jun 3, 2025
3590398
mingw: avoid the comma operator (#5660)
dscho Jun 5, 2025
c692ff0
wincred: Avoid memory corruption (#5856)
dscho Oct 6, 2025
ed7c5f1
Merge branch 'adjust-cmake-to-xdiff-and-reftable-merge-into-libgit'
dscho Nov 4, 2025
08357b1
Merge branch 'fix-failure-reporting-in-dockerized-ci'
dscho Nov 4, 2025
07a8c58
git-svn: mark it as unsupported by the Git for Windows project
dscho Nov 3, 2025
dde2c4e
Merge branch 'ready-for-upstream'
dscho Oct 11, 2018
be2e3a0
Win32: make FILETIME conversion functions public
kblees Jul 6, 2013
b4bfdc1
Win32: dirent.c: Move opendir down
kblees Sep 8, 2013
62e0b9f
mingw: make the dirent implementation pluggable
kblees Sep 8, 2013
00fa304
Win32: make the lstat implementation pluggable
kblees Sep 8, 2013
1967540
mingw: add infrastructure for read-only file system level caches
kblees Sep 8, 2013
e3ea2f7
mingw: add a cache below mingw's lstat and dirent implementations
kblees Oct 1, 2013
b5f1718
fscache: load directories only once
kblees Jun 24, 2014
e739a17
fscache: add key for GIT_TRACE_FSCACHE
jeffhostetler Jan 24, 2017
ec04b90
fscache: remember not-found directories
jeffhostetler Dec 13, 2016
215c2e4
fscache: add a test for the dir-not-found optimization
dscho Jan 25, 2017
9a7f035
add: use preload-index and fscache for performance
jeffhostetler Nov 22, 2016
a9c9cad
dir.c: make add_excludes aware of fscache during status
jeffhostetler Nov 1, 2017
e0b6263
fscache: make fscache_enabled() public
jeffhostetler Dec 20, 2017
2a7231e
dir.c: regression fix for add_excludes with fscache
jeffhostetler Dec 20, 2017
ed353be
fetch-pack.c: enable fscache for stats under .git/objects
Nov 22, 2017
01ac0a9
checkout.c: enable fscache for checkout again
Jan 30, 2018
b236c0f
mem_pool: add GIT_TRACE_MEMPOOL support
benpeart Oct 4, 2018
df9fcbb
Enable the filesystem cache (fscache) in refresh_index().
benpeart Sep 7, 2018
4f46d07
fscache: fscache takes an initial size
benpeart Nov 2, 2018
2f33366
fscache: use FindFirstFileExW to avoid retrieving the short name
benpeart Oct 23, 2018
b438f29
fscache: update fscache to be thread specific instead of global
benpeart Oct 4, 2018
3173830
fscache: add GIT_TEST_FSCACHE support
benpeart Oct 4, 2018
3ed2eae
fscache: teach fscache to use mempool
benpeart Nov 2, 2018
a3102ae
fscache: remember the reparse tag for each entry
dscho Dec 11, 2018
3234b40
git-gui--askyesno: fix funny text wrapping
dscho Sep 20, 2017
344381a
fscache: add fscache hit statistics
benpeart Sep 25, 2018
c170b81
fscache: make fscache_enable() thread safe
benpeart Nov 16, 2018
f54325f
fscache: implement an FSCache-aware is_mount_point()
dscho Dec 11, 2018
e2e119a
git-gui--askyesno (mingw): use Git for Windows' icon, if available
dscho Sep 20, 2017
bbb5c02
unpack-trees: enable fscache for sparse-checkout
derrickstolee Jun 12, 2019
80af5f8
status: disable and free fscache at the end of the status command
benpeart Nov 1, 2018
b037eba
fscache: teach fscache to use NtQueryDirectoryFile
benpeart Nov 15, 2018
3462b6c
clean: make use of FSCache
dscho Dec 11, 2018
08a4d63
Merge branch 'git-gui-askyesno'
dscho Jun 8, 2018
b1c39ed
git-svn: mark it as unsupported by the Git for Windows project (#5923)
dscho Nov 4, 2025
bf72c92
strbuf_readlink: don't call readlink twice if hint is the exact link …
kblees May 11, 2015
b13f979
strbuf_readlink: support link targets that exceed PATH_MAX
kblees May 11, 2015
bdc6ff9
lockfile.c: use is_dir_sep() instead of hardcoded '/' checks
kblees May 11, 2015
148ffdd
Win32: don't call GetFileAttributes twice in mingw_lstat()
kblees May 12, 2015
2f5a8dc
Win32: implement stat() with symlink support
kblees May 15, 2015
cf624d5
Win32: remove separate do_lstat() function
kblees May 11, 2015
44fad3f
Win32: let mingw_lstat() error early upon problems with reparse points
kblees May 23, 2015
5023ad8
mingw: teach fscache and dirent about symlinks
kblees Jan 10, 2017
b6ce1f0
Win32: lstat(): return adequate stat.st_size for symlinks
kblees May 15, 2015
86d57fb
Win32: factor out retry logic
kblees May 19, 2015
de0e295
Win32: change default of 'core.symlinks' to false
kblees May 23, 2015
a37bb27
Win32: add symlink-specific error codes
kblees May 15, 2015
c0b4810
Merge branch 'fscache'
dscho Nov 15, 2018
996abeb
Win32: mingw_unlink: support symlinks to directories
kblees May 23, 2015
4e72e28
Merge pull request #1909 from benpeart/free-fscache-after-status-gfw
dscho Nov 5, 2018
c2b75a3
Win32: mingw_rename: support renaming symlinks
kblees May 19, 2015
db96099
Merge remote-tracking branch 'benpeart/fscache-per-thread-gfw'
dscho Nov 16, 2018
6c93cf0
Win32: mingw_chdir: change to symlink-resolved directory
kblees May 23, 2015
cd6306e
Merge branch 'dont-clean-junctions-fscache'
dscho Jul 23, 2019
8ff71f3
Win32: implement readlink()
kblees May 23, 2015
49491e1
pack-objects (mingw): demonstrate a segmentation fault with large deltas
vangdfang Jan 9, 2014
04c6d33
mingw: lstat: compute correct size for symlinks
billziss-gh May 28, 2020
490df91
mingw: support long paths
kblees Jul 28, 2015
6e36209
Win32: implement basic symlink() functionality (file symlinks only)
kblees May 23, 2015
38eeaad
Win32: fix 'lstat("dir/")' with long paths
kblees Jul 4, 2014
baf2ab4
Win32: symlink: add support for symlinks to directories
kblees May 23, 2015
00f1f7a
win32(long path support): leave drive-less absolute paths intact
dscho Sep 6, 2023
45fb861
mingw: Support `git_terminal_prompt` with more terminals
kblees Mar 19, 2015
d4fa9a2
mingw: try to create symlinks without elevated permissions
dscho May 30, 2017
430decc
compat/fsmonitor/fsm-*-win32: support long paths
jeffhostetler Mar 25, 2022
981c044
compat/terminal.c: only use the Windows console if bash 'read -r' fails
kblees May 9, 2015
cb1cf22
mingw: emulate stat() a little more faithfully
dscho Mar 2, 2020
5347572
clean: suggest using `core.longPaths` if paths are too long to remove
mathstuf Apr 22, 2022
0a5c195
mingw (git_terminal_prompt): do fall back to CONIN$/CONOUT$ method
dscho Feb 23, 2018
4ae8180
mingw: explicitly specify with which cmd to prefix the cmdline
dscho Jul 20, 2017
4b6e8a9
mingw: when path_lookup() failed, try BusyBox
dscho Jul 20, 2017
3643719
test-tool: learn to act as a drop-in replacement for `iconv`
dscho Jul 20, 2017
6a86f61
tests(mingw): if `iconv` is unavailable, use `test-helper --iconv`
dscho Jul 20, 2017
70c0992
gitattributes: mark .png files as binary
dscho Oct 11, 2018
28723e5
tests: move test PNGs into t/lib-diff/
dscho Aug 5, 2017
630e47e
tests: only override sort & find if there are usable ones in /usr/bin/
dscho Jul 17, 2017
4f5abb8
tests: use the correct path separator with BusyBox
dscho Nov 19, 2018
6bd020c
mingw: only use Bash-ism `builtin pwd -W` when available
dscho Jun 29, 2017
9f723cb
tests (mingw): remove Bash-specific pwd option
dscho Jun 30, 2017
945e4f6
test-lib: add BUSYBOX prerequisite
dscho Jul 19, 2017
5faafee
t5003: use binary file from t/lib-diff/
dscho Aug 5, 2017
e756996
t5532: workaround for BusyBox on Windows
dscho Jul 21, 2017
1661823
mingw: introduce code to detect whether we're inside a Windows container
zcube Apr 23, 2018
8d49a9e
Win32: symlink: move phantom symlink creation to a separate function
piscisaureus Oct 26, 2018
adbdc40
t5605: special-case hardlink test for BusyBox-w32
dscho Jul 21, 2017
c8bcab9
mingw: when running in a Windows container, try to rename() harder
zcube Apr 23, 2018
cf8813f
Introduce helper to create symlinks that knows about index_state
dscho Feb 11, 2019
151688b
t5813: allow for $PWD to be a Windows path
dscho Jul 5, 2017
f2c3865
mingw: move the file_attr_to_st_mode() function definition
zcube Apr 23, 2018
af4b056
mingw: allow to specify the symlink type in .gitattributes
piscisaureus Oct 26, 2018
2f9d072
t9200: skip tests when $PWD contains a colon
dscho Jul 7, 2017
3857f39
mingw: Windows Docker volumes are *not* symbolic links
dscho Apr 23, 2018
29ef654
mingw: work around rename() failing on a read-only file
dsl101 Jul 28, 2023
13af3ab
Win32: symlink: add test for `symlink` attribute
piscisaureus Oct 26, 2018
73fc2e3
mingw: kill child processes in a gentler way
dscho May 17, 2017
d352e82
mingw: special-case index entries for symlinks with buggy size
dscho Jun 4, 2020
6194e8d
mingw: add a Makefile target to copy test artifacts
dscho Jul 19, 2017
8584677
mingw: optionally enable wsl compability file mode bits
swigger Jun 7, 2023
6e44939
Merge branch 'gitk-and-git-gui-patches'
dscho Oct 11, 2018
e1eac7b
Describe Git for Windows' architecture [no ci]
dscho Feb 13, 2023
d903d32
Merge branch 'long-paths'
dscho Nov 15, 2018
9ba4be1
Modify the Code of Conduct for Git for Windows
dscho Oct 11, 2019
aa43fb2
Merge branch 'msys2'
dscho Nov 15, 2018
256f2a2
CONTRIBUTING.md: add guide for first-time contributors
derrickstolee Mar 1, 2018
df08374
Merge branch 'kblees/kb/symlinks'
dscho Nov 15, 2018
b5588c7
README.md: Add a Windows-specific preamble
dscho Jan 10, 2014
06432a4
Merge 'docker-volumes-are-no-symlinks'
dscho Oct 12, 2018
a061b15
Add an issue template
shiftkey Feb 18, 2016
f76438e
mingw: try resetting the read-only bit if rename fails (#4527)
dscho Aug 7, 2023
c989c3a
Add a GitHub workflow to monitor component updates
dscho Sep 29, 2020
60753fc
Modify the GitHub Pull Request template (to reflect Git for Windows)
Dec 22, 2017
1a9e6b9
Merge pull request #1897 from piscisaureus/symlink-attr
dscho Oct 31, 2018
706286c
mingw: really handle SIGINT
dscho Apr 22, 2018
4d655b8
mingw: do not call xutftowcs_path in mingw_mktemp
neerajsi-msft Oct 27, 2021
0c24cd4
Partially un-revert "editor: save and reset terminal after calling ED…
dscho Nov 25, 2021
5d11c78
reset: reinstate support for the deprecated --stdin option
dscho Dec 10, 2019
10dbdaa
fsmonitor: reintroduce core.useBuiltinFSMonitor
vdye Apr 4, 2022
f1f4a08
dependabot: help keeping GitHub Actions versions up to date
dscho Feb 6, 2024
74f364a
SECURITY.md: document Git for Windows' policies
dscho Aug 23, 2019
2e5a57c
Merge branch 'busybox-w32'
dscho Feb 7, 2019
cd5d8c6
Merge branch 'wsl-file-mode-bits'
dscho Aug 7, 2023
9d8c5d4
Merge pull request #1170 from dscho/mingw-kill-process
dscho Oct 11, 2018
c43f06e
Merge pull request #3492 from dscho/ns/batched-fsync
vdye Oct 28, 2021
4bf084d
Merge branch 'un-revert-editor-save-and-reset'
dscho Jan 15, 2022
8c5dd37
Merge branch 'phase-out-reset-stdin'
dscho Jun 8, 2018
7c12509
Merge branch 'deprecate-core.useBuiltinFSMonitor'
dscho Jan 24, 2023
0c3e19b
Merge pull request #2837 from dscho/monitor-component-updates
dscho Oct 7, 2020
0a65ee6
Merge 'readme' into HEAD
dscho Jun 7, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -316,16 +316,16 @@ jobs:
vector:
- jobname: osx-clang
cc: clang
pool: macos-13
pool: macos-14
- jobname: osx-reftable
cc: clang
pool: macos-13
pool: macos-14
- jobname: osx-gcc
cc: gcc-13
pool: macos-13
pool: macos-14
- jobname: osx-meson
cc: clang
pool: macos-13
pool: macos-14
env:
CC: ${{matrix.vector.cc}}
CC_PACKAGE: ${{matrix.vector.cc_package}}
Expand Down
5 changes: 5 additions & 0 deletions Documentation/MyFirstContribution.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -1153,6 +1153,11 @@ NOTE: When you are sending a real patch, it will go to git@vger.kernel.org - but
please don't send your patchset from the tutorial to the real mailing list! For
now, you can send it to yourself, to make sure you understand how it will look.

NOTE: After sending your patches, you can confirm that they reached the mailing
list by visiting https://lore.kernel.org/git/. Use the search bar to find your
name or the subject of your patch. If it appears, your email was successfully
delivered.

After you run the command above, you will be presented with an interactive
prompt for each patch that's about to go out. This gives you one last chance to
edit or quit sending something (but again, don't edit code this way). Once you
Expand Down
32 changes: 32 additions & 0 deletions Documentation/RelNotes/2.52.0.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,11 @@ UI, Workflows & Features
avoids doing maintenance tasks that rebuilds everything from
scratch.

* "git repo structure", a new command.

* The help text and manual page of "git bisect" command have been
made consistent with each other.


Performance, Internal Implementation, Development Support etc.
--------------------------------------------------------------
Expand Down Expand Up @@ -165,6 +170,18 @@ Performance, Internal Implementation, Development Support etc.
* The code to walk revision graph to compute merge base has been
optimized.

* AI guidelines has been added to our documentation set.

* Contributed credential helpers (obviously in contrib/) now have "cd
$there && make install" target.

* The "MyFirstContribution" tutorial tells the reader how to send out
their patches; the section gained a hint to verify the message
reached the mailing list.

* The "debug" ref-backend was missing a method implementation, which
has been corrected.


Fixes since v2.51
-----------------
Expand Down Expand Up @@ -397,6 +414,19 @@ including security updates, are included in this release.
"foo**/bar" match with "foobar", which has been corrected.
(merge 1940a02dc1 jk/match-pathname-fix later to maint).

* Tests did not set up GNUPGHOME correctly, which is fixed but some
flaky tests are exposed in t1016, which needs to be addressed
before this topic can move forward.
(merge 6cd8369ef3 tz/test-prepare-gnupghome later to maint).

* The patterns used in the .gitignore files use backslash in the way
documented for fnmatch(3); document as such to reduce confusion.
(merge 8a6d158a1d jk/doc-backslash-in-exclude later to maint).

* The version of macos image used in GitHub CI has been updated to
macos-14, as the macos-13 that we have been using got deprecated.
(merge 73b9cdb7c4 jc/ci-use-macos-14 later to maint).

* Other code cleanup, docfix, build fix, etc.
(merge 529a60a885 ua/t1517-short-help-tests later to maint).
(merge 22d421fed9 ac/deglobal-fmt-merge-log-config later to maint).
Expand All @@ -409,3 +439,5 @@ including security updates, are included in this release.
(merge 15b8abde07 js/mingw-includes-cleanup later to maint).
(merge 2cebca0582 tb/cat-file-objectmode-update later to maint).
(merge 8f487db07a kh/doc-patch-id-1 later to maint).
(merge f711f37b05 eb/t1016-hash-transition-fix later to maint).
(merge 85333aa1af jk/test-delete-gpgsig-leakfix later to maint).
28 changes: 28 additions & 0 deletions Documentation/SubmittingPatches
Original file line number Diff line number Diff line change
Expand Up @@ -446,6 +446,34 @@ highlighted above.
Only capitalize the very first letter of the trailer, i.e. favor
"Signed-off-by" over "Signed-Off-By" and "Acked-by:" over "Acked-By".

[[ai]]
=== Use of Artificial Intelligence (AI)

The Developer's Certificate of Origin requires contributors to certify
that they know the origin of their contributions to the project and
that they have the right to submit it under the project's license.
It's not yet clear that this can be legally satisfied when submitting
significant amount of content that has been generated by AI tools.

Another issue with AI generated content is that AIs still often
hallucinate or just produce bad code, commit messages, documentation
or output, even when you point out their mistakes.

To avoid these issues, we will reject anything that looks AI
generated, that sounds overly formal or bloated, that looks like AI
slop, that looks good on the surface but makes no sense, or that
senders don’t understand or cannot explain.

We strongly recommend using AI tools carefully and responsibly.

Contributors would often benefit more from AI by using it to guide and
help them step by step towards producing a solution by themselves
rather than by asking for a full solution that they would then mostly
copy-paste. They can also use AI to help with debugging, or with
checking for obvious mistakes, things that can be improved, things
that don’t match our style, guidelines or our feedback, before sending
it to us.

[[git-tools]]
=== Generate your patch using Git tools out of your commits.

Expand Down
43 changes: 26 additions & 17 deletions Documentation/git-bisect.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,22 @@ git-bisect - Use binary search to find the commit that introduced a bug
SYNOPSIS
--------
[verse]
'git bisect' <subcommand> <options>
'git bisect' start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
[--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
'git bisect' (bad|new|<term-new>) [<rev>]
'git bisect' (good|old|<term-old>) [<rev>...]
'git bisect' terms [--term-(good|old) | --term-(bad|new)]
'git bisect' skip [(<rev>|<range>)...]
'git bisect' next
'git bisect' reset [<commit>]
'git bisect' (visualize|view)
'git bisect' replay <logfile>
'git bisect' log
'git bisect' run <cmd> [<arg>...]
'git bisect' help

DESCRIPTION
-----------
The command takes various subcommands, and different options depending
on the subcommand:

git bisect start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
[--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
git bisect (bad|new|<term-new>) [<rev>]
git bisect (good|old|<term-old>) [<rev>...]
git bisect terms [--term-(good|old) | --term-(bad|new)]
git bisect skip [(<rev>|<range>)...]
git bisect reset [<commit>]
git bisect (visualize|view)
git bisect replay <logfile>
git bisect log
git bisect run <cmd> [<arg>...]
git bisect help

This command uses a binary search algorithm to find which commit in
your project's history introduced a bug. You use it by first telling
it a "bad" commit that is known to contain the bug, and a "good"
Expand Down Expand Up @@ -295,6 +291,19 @@ $ git bisect skip v2.5 v2.5..v2.6
This tells the bisect process that the commits between `v2.5` and
`v2.6` (inclusive) should be skipped.

Bisect next
~~~~~~~~~~~

Normally, after marking a revision as good or bad, Git automatically
computes and checks out the next revision to test. However, if you need to
explicitly request the next bisection step, you can use:

------------
$ git bisect next
------------

You might use this to resume the bisection process after interrupting it
by checking out a different revision.

Cutting down bisection by giving more parameters to bisect start
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down
4 changes: 2 additions & 2 deletions Documentation/git-checkout.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ uncommitted changes.
`git checkout -B <branch> [<start-point>]`::
The same as `-b`, except that if the branch already exists it
resets `_<branch>_` to the start point instead of failing.
resets _<branch>_ to the start point instead of failing.
`git checkout --detach [<branch>]`::
`git checkout [--detach] <commit>`::
Expand Down Expand Up @@ -155,7 +155,7 @@ of it").
`-B <new-branch>`::
The same as `-b`, except that if the branch already exists it
resets `_<branch>_` to the start point instead of failing.
resets _<branch>_ to the start point instead of failing.
`-t`::
`--track[=(direct|inherit)]`::
Expand Down
30 changes: 30 additions & 0 deletions Documentation/git-repo.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ SYNOPSIS
--------
[synopsis]
git repo info [--format=(keyvalue|nul)] [-z] [<key>...]
git repo structure [--format=(table|keyvalue|nul)]

DESCRIPTION
-----------
Expand Down Expand Up @@ -43,6 +44,35 @@ supported:
+
`-z` is an alias for `--format=nul`.

`structure [--format=(table|keyvalue|nul)]`::
Retrieve statistics about the current repository structure. The
following kinds of information are reported:
+
* Reference counts categorized by type
* Reachable object counts categorized by type

+
The output format can be chosen through the flag `--format`. Three formats are
supported:
+
`table`:::
Outputs repository stats in a human-friendly table. This format may
change and is not intended for machine parsing. This is the default
format.

`keyvalue`:::
Each line of output contains a key-value pair for a repository stat.
The '=' character is used to delimit between the key and the value.
Values containing "unusual" characters are quoted as explained for the
configuration variable `core.quotePath` (see linkgit:git-config[1]).

`nul`:::
Similar to `keyvalue`, but uses a NUL character to delimit between
key-value pairs instead of a newline. Also uses a newline character as
the delimiter between the key and value instead of '='. Unlike the
`keyvalue` format, values containing "unusual" characters are never
quoted.

INFO KEYS
---------
In order to obtain a set of values from `git repo info`, you should provide
Expand Down
5 changes: 5 additions & 0 deletions Documentation/gitignore.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,11 @@ PATTERN FORMAT
one of the characters in a range. See fnmatch(3) and the
FNM_PATHNAME flag for a more detailed description.

- A backslash ("`\`") can be used to escape any character. E.g., "`\*`"
matches a literal asterisk (and "`\a`" matches "`a`", even though
there is no need for escaping there). As with fnmatch(3), a backslash
at the end of a pattern is an invalid pattern that never matches.

Two consecutive asterisks ("`**`") in patterns matched against
full pathname may have special meaning:

Expand Down
2 changes: 1 addition & 1 deletion GIT-VERSION-GEN
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

DEF_VER=v2.52.0-rc0
DEF_VER=v2.52.0-rc1

LF='
'
Expand Down
21 changes: 13 additions & 8 deletions builtin/bisect.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,31 +27,35 @@ static GIT_PATH_FUNC(git_path_bisect_first_parent, "BISECT_FIRST_PARENT")
static GIT_PATH_FUNC(git_path_bisect_run, "BISECT_RUN")

#define BUILTIN_GIT_BISECT_START_USAGE \
N_("git bisect start [--term-(new|bad)=<term> --term-(old|good)=<term>]" \
" [--no-checkout] [--first-parent] [<bad> [<good>...]] [--]" \
" [<pathspec>...]")
#define BUILTIN_GIT_BISECT_STATE_USAGE \
N_("git bisect (good|bad) [<rev>...]")
N_("git bisect start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]\n" \
" [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]")
#define BUILTIN_GIT_BISECT_BAD_USAGE \
N_("git bisect (bad|new|<term-new>) [<rev>]")
#define BUILTIN_GIT_BISECT_GOOD_USAGE \
N_("git bisect (good|old|<term-old>) [<rev>...]")
#define BUILTIN_GIT_BISECT_TERMS_USAGE \
"git bisect terms [--term-good | --term-bad]"
"git bisect terms [--term-(good|old) | --term-(bad|new)]"
#define BUILTIN_GIT_BISECT_SKIP_USAGE \
N_("git bisect skip [(<rev>|<range>)...]")
#define BUILTIN_GIT_BISECT_NEXT_USAGE \
"git bisect next"
#define BUILTIN_GIT_BISECT_RESET_USAGE \
N_("git bisect reset [<commit>]")
#define BUILTIN_GIT_BISECT_VISUALIZE_USAGE \
"git bisect visualize"
"git bisect (visualize|view)"
#define BUILTIN_GIT_BISECT_REPLAY_USAGE \
N_("git bisect replay <logfile>")
#define BUILTIN_GIT_BISECT_LOG_USAGE \
"git bisect log"
#define BUILTIN_GIT_BISECT_RUN_USAGE \
N_("git bisect run <cmd> [<arg>...]")
#define BUILTIN_GIT_BISECT_HELP_USAGE \
"git bisect help"

static const char * const git_bisect_usage[] = {
BUILTIN_GIT_BISECT_START_USAGE,
BUILTIN_GIT_BISECT_STATE_USAGE,
BUILTIN_GIT_BISECT_BAD_USAGE,
BUILTIN_GIT_BISECT_GOOD_USAGE,
BUILTIN_GIT_BISECT_TERMS_USAGE,
BUILTIN_GIT_BISECT_SKIP_USAGE,
BUILTIN_GIT_BISECT_NEXT_USAGE,
Expand All @@ -60,6 +64,7 @@ static const char * const git_bisect_usage[] = {
BUILTIN_GIT_BISECT_REPLAY_USAGE,
BUILTIN_GIT_BISECT_LOG_USAGE,
BUILTIN_GIT_BISECT_RUN_USAGE,
BUILTIN_GIT_BISECT_HELP_USAGE,
NULL
};

Expand Down
Loading
Loading