Rebase to v2.54.0-rc1 #6166
Rebase to v2.54.0-rc1 #6166
shears/next rebased successfully
Rebase Summary: next
From: 7e509c4476 (Merge 'readme' into HEAD, 2018-06-07) (116346c19a..7e509c4476)
Skipped: bec1102 (sideband: mask control characters, 2024-11-06)
Upstream equivalent: 0494953 (sideband: mask control characters, 2026-03-05)
Range-diff
-
1: bec1102 ! 1: 0494953 sideband: mask control characters
@@ Commit message There is likely a need for more fine-grained controls instead of using a "heavy hammer" like this, which will be introduced subsequently. + Helped-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> + Signed-off-by: Junio C Hamano <gitster@pobox.com> ## sideband.c ## @@ sideband.c: void list_config_color_sideband_slots(struct string_list *list, const char *pref @@ sideband.c: void list_config_color_sideband_slots(struct string_list *list, cons +{ + strbuf_grow(dest, n); + for (; n && *src; src++, n--) { -+ if (!iscntrl(*src) || *src == '\t' || *src == '\n') ++ if (!iscntrl(*src) || *src == '\t' || *src == '\n') { + strbuf_addch(dest, *src); -+ else { ++ } else { + strbuf_addch(dest, '^'); -+ strbuf_addch(dest, 0x40 + *src); ++ strbuf_addch(dest, *src == 0x7f ? '?' : 0x40 + *src); + } + } +} @@ t/t5409-colorize-remote-messages.sh: test_expect_success 'fallback to color.ui' + printf "error: Have you \\033[31mread\\033[m this?\\n" >&2 + exec "$@" + EOF -+ test_config_global uploadPack.packObjectshook ./color-me-surprised && ++ test_config_global uploadPack.packObjectsHook ./color-me-surprised && + test_commit need-at-least-one-commit && + git clone --no-local . throw-away 2>stderr && + test_decode_color <stderr >decoded &&
Skipped: 49625dc (sideband: introduce an "escape hatch" to allow control characters, 2024-11-06)
Upstream equivalent: 9ed1625 (sideband: introduce an "escape hatch" to allow control characters, 2026-03-05)
Range-diff
-
1: 49625dc ! 1: 9ed1625 sideband: introduce an "escape hatch" to allow control characters
@@ Commit message To help with those use cases, give users a way to opt-out of the protections: `sideband.allowControlCharacters`. + Suggested-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> + Signed-off-by: Junio C Hamano <gitster@pobox.com> ## Documentation/config.adoc ## @@ Documentation/config.adoc: include::config/sequencer.adoc[] @@ sideband.c: void list_config_color_sideband_slots(struct string_list *list, cons + strbuf_grow(dest, n); for (; n && *src; src++, n--) { - if (!iscntrl(*src) || *src == '\t' || *src == '\n') + if (!iscntrl(*src) || *src == '\t' || *src == '\n') { ## t/t5409-colorize-remote-messages.sh ## @@ t/t5409-colorize-remote-messages.sh: test_expect_success 'disallow (color) control sequences in sideband' ' EOF - test_config_global uploadPack.packObjectshook ./color-me-surprised && + test_config_global uploadPack.packObjectsHook ./color-me-surprised && test_commit need-at-least-one-commit && + git clone --no-local . throw-away 2>stderr &&
Skipped: ef329a4 (sideband: do allow ANSI color sequences by default, 2024-11-18)
Upstream equivalent: 12f0fda (sideband: do allow ANSI color sequences by default, 2026-03-05)
Range-diff
-
1: ef329a4 ! 1: 12f0fda sideband: do allow ANSI color sequences by default
@@ Commit message to the terminal, and `sideband.allowControlCharacters` to override that behavior. - However, some `pre-receive` hooks that are actively used in practice - want to color their messages and therefore rely on the fact that Git - passes them through to the terminal. + However, as reported by brian m. carlson, some `pre-receive` hooks that + are actively used in practice want to color their messages and therefore + rely on the fact that Git passes them through to the terminal, even + though they have no way to determine whether the receiving side can + actually handle Escape sequences (think e.g. about the practice + recommended by Git that third-party applications wishing to use Git + functionality parse the output of Git commands). In contrast to other ANSI escape sequences, it is highly unlikely that coloring sequences can be essential tools in attack vectors that mislead Git users e.g. by hiding crucial information. Therefore we can have both: Continue to allow ANSI coloring sequences to - be passed to the terminal, and neutralize all other ANSI escape - sequences. + be passed to the terminal by default, and neutralize all other ANSI + Escape sequences. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> + Signed-off-by: Junio C Hamano <gitster@pobox.com> ## Documentation/config/sideband.adoc ## @@ @@ Documentation/config/sideband.adoc + this config setting to override this behavior: ++ +-- -+ color:: ++ `default`:: ++ `color`:: + Allow ANSI color sequences, line feeds and horizontal tabs, + but mask all other control characters. This is the default. -+ false:: ++ `false`:: + Mask all control characters other than line feeds and + horizontal tabs. -+ true:: ++ `true`:: + Allow all control characters to be sent to the terminal. +-- @@ sideband.c: static struct keyword_entry keywords[] = { -static int allow_control_characters; +static enum { -+ ALLOW_NO_CONTROL_CHARACTERS = 0, -+ ALLOW_ALL_CONTROL_CHARACTERS = 1, -+ ALLOW_ANSI_COLOR_SEQUENCES = 2 ++ ALLOW_NO_CONTROL_CHARACTERS = 0, ++ ALLOW_ANSI_COLOR_SEQUENCES = 1<<0, ++ ALLOW_DEFAULT_ANSI_SEQUENCES = ALLOW_ANSI_COLOR_SEQUENCES, ++ ALLOW_ALL_CONTROL_CHARACTERS = 1<<1, +} allow_control_characters = ALLOW_ANSI_COLOR_SEQUENCES; /* Returns a color setting (GIT_COLOR_NEVER, etc). */ @@ sideband.c: static enum git_colorbool use_sideband_colors(void) + if (repo_config_get_string_tmp(the_repository, "sideband.allowcontrolcharacters", + &value)) + ; /* huh? `get_maybe_bool()` returned -1 */ ++ else if (!strcmp(value, "default")) ++ allow_control_characters = ALLOW_DEFAULT_ANSI_SEQUENCES; + else if (!strcmp(value, "color")) + allow_control_characters = ALLOW_ANSI_COLOR_SEQUENCES; + else @@ sideband.c: void list_config_color_sideband_slots(struct string_list *list, cons + * Valid ANSI color sequences are of the form + * + * ESC [ [<n> [; <n>]*] m ++ * ++ * These are part of the Select Graphic Rendition sequences which ++ * contain more than just color sequences, for more details see ++ * https://en.wikipedia.org/wiki/ANSI_escape_code#SGR. + */ + + if (allow_control_characters != ALLOW_ANSI_COLOR_SEQUENCES || @@ sideband.c: void list_config_color_sideband_slots(struct string_list *list, cons } @@ sideband.c: static void strbuf_add_sanitized(struct strbuf *dest, const char *src, int n) for (; n && *src; src++, n--) { - if (!iscntrl(*src) || *src == '\t' || *src == '\n') + if (!iscntrl(*src) || *src == '\t' || *src == '\n') { strbuf_addch(dest, *src); -- else { -+ else if ((i = handle_ansi_color_sequence(dest, src, n))) { ++ } else if ((i = handle_ansi_color_sequence(dest, src, n))) { + src += i; + n -= i; -+ } else { + } else { strbuf_addch(dest, '^'); - strbuf_addch(dest, 0x40 + *src); - } + strbuf_addch(dest, *src == 0x7f ? '?' : 0x40 + *src); ## t/t5409-colorize-remote-messages.sh ## @@ t/t5409-colorize-remote-messages.sh: test_expect_success 'fallback to color.ui' ' @@ t/t5409-colorize-remote-messages.sh: test_expect_success 'fallback to color.ui' + printf "error: Have you \\033[31mread\\033[m this?\\a\\n" >&2 exec "$@" EOF - test_config_global uploadPack.packObjectshook ./color-me-surprised && + test_config_global uploadPack.packObjectsHook ./color-me-surprised && @@ t/t5409-colorize-remote-messages.sh: test_expect_success 'disallow (color) control sequences in sideband' ' git clone --no-local . throw-away 2>stderr &&
To: 9ccdc34a8c (Merge 'readme' into HEAD, 2018-06-07) (b799490507..9ccdc34a8c)
Statistics
| Metric | Count |
|---|---|
| Total conflicts | 3 |
| Skipped (upstreamed) | 3 |
| Resolved surgically | 0 |
Range-diff (click to expand)
-
1: 406438c = 1: ec101a3 unix-socket: avoid leak when initialization fails
-
2: 9199cd5 = 2: 04bce5d grep: prevent
^$false match at end of file -
3: f0b10b8 = 3: 8a19065 Merge branch 'fixes-from-the-git-mailing-list'
-
4: 3fa5f1a = 4: 073b651 mingw: include the Python parts in the build
-
5: e66f684 = 5: 9b1b2bd win32/pthread: avoid name clashes with winpthread
-
6: 4d2860c = 6: ab84d15 git-compat-util: avoid redeclaring _DEFAULT_SOURCE
-
7: 0f0d7a1 = 7: 1d27947 Import the source code of mimalloc v2.2.7
-
8: b67b76d = 8: 02909a2 t9350: point out that refs are not updated correctly
-
9: 0780bb8 = 9: a490d0f mimalloc: adjust for building inside Git
-
30: 2d3c5eb = 11: c025c4e mingw: demonstrate a
git addissue with NTFS junctions -
11: 7a4b591 = 12: 086dac0 mimalloc: offer a build-time option to enable it
-
34: 3fa3370 = 13: c8d2d05 t5505/t5516: allow running without
.git/branches/in the templates -
12: d4935f3 = 14: 29394aa remote-helper: check helper status after import/export
-
13: e967c26 = 15: 82ef6ca clean: do not traverse mount points
-
35: ef3396c = 16: 1c99908 strbuf_realpath(): use platform-dependent API if available
-
43: 30f4aa8 = 18: 03f6616 t5505/t5516: fix white-space around redirectors
-
36: e561019 = 19: c59848c http: use new "best effort" strategy for Secure Channel revoke checking
-
15: 26e4e0c = 20: bed4438 Always auto-gc after calling a fast-import transport
-
16: 8ead22f = 21: b11d7b2 mingw: prevent regressions with "drive-less" absolute paths
-
17: 2287e92 = 22: 1e3cf34 clean: remove mount points when possible
-
45: be01182 = 23: f637efe transport: optionally disable side-band-64k
-
46: 55f7524 = 24: c6da4ce mingw: fix fatal error working on mapped network drives on Windows
-
47: 66e4cae = 25: 4843b21 clink.pl: fix MSVC compile script to handle libcurl-d.lib
-
48: d92c500 = 26: 0d27af1 mingw: implement a platform-specific
strbuf_realpath() -
49: 5f7b6e6 = 27: 385c44d t3701: verify that we can add lots of files interactively
-
33: 7f7b54c = 28: 642c785 windows: skip linking
git-<command>for built-ins -
65: c9da740 = 30: a0549f7 mingw: drop the -D_USE_32BIT_TIME_T option
-
66: 5e3cb00 = 31: de34526 mingw: only use -Wl,--large-address-aware for 32-bit builds
-
67: 16e1c41 = 32: 4a9c051 mingw: avoid over-specifying
--pic-executable -
68: 6781c65 = 33: e9dc3b5 mingw: set the prefix and HOST_CPU as per MSYS2's settings
-
69: ec8cd3d = 34: e9d8db9 mingw: only enable the MSYS2-specific stuff when compiling in MSYS2
-
70: 578db2e = 35: 1240d42 mingw: rely on MSYS2's metadata instead of hard-coding it
-
71: a41f170 = 36: b6b7e5d mingw: always define
ETC_*for MSYS2 environments -
72: 29ec6ea = 37: 9839fb0 max_tree_depth: lower it for clang builds in general on Windows
-
19: fdbdd1f = 40: 4499bb9 vcpkg_install: add comment regarding slow network connections
-
75: 1912f57 = 41: 213720f mingw: allow
git.exeto be used instead of the "Git wrapper" -
20: 4f33a0c = 42: e80ae5d vcbuild: install ARM64 dependencies when building ARM64 binaries
-
77: 1df3fa9 = 43: 2b90187 mingw: ignore HOMEDRIVE/HOMEPATH if it points to Windows' system directory
-
21: 9fad39d = 44: 23823b7 vcbuild: add an option to install individual 'features'
-
79: d53e5cb = 45: ea5235e Merge branch 'dscho-avoid-d-f-conflict-in-vs-master'
-
22: 7dc4cb6 = 46: 86885c7 cmake: allow building for Windows/ARM64
-
81: ad61c62 = 47: a6aea32 clink.pl: fix libexpatd.lib link error when using MSVC
-
23: d281ce3 = 48: b497782 ci(vs-build) also build Windows/ARM64 artifacts
-
83: 99bcd10 = 49: 45b5402 Makefile: clean up .ilk files when MSVC=1
-
25: c830dd1 = 51: 0d52b94 hash-object: demonstrate a >4GB/LLP64 problem
-
85: 6bf5d88 = 52: dec0846 vcbuild: add support for compiling Windows resource files
-
26: 1f84226 = 53: b062ec1 cmake(): allow setting HOST_CPU for cross-compilation
-
27: 8623d7c = 54: cfc4d05 object-file.c: use size_t for header lengths
-
87: 6e8247b = 55: 1d1e68a config.mak.uname: add git.rc to MSVC builds
-
28: 48f0b9c = 56: 00d051c CMake: default Visual Studio generator has changed
-
29: 1c2b8bc = 57: 641ea96 hash algorithms: use size_t for section lengths
-
90: 4ffa5ff = 58: f06d339 clink.pl: ignore no-stack-protector arg on MSVC=1 builds
-
31: 80eb315 = 59: a84c62b .gitignore: add Visual Studio CMakeSetting.json file
-
32: 0590040 = 60: be550bb hash-object --stdin: verify that it works with >4GB/LLP64
-
95: 2ecd598 = 61: 8f1ccad clink.pl: move default linker options for MSVC=1 builds
-
37: bfaa77d = 62: a24356f subtree: update
contrib/subtreetesttarget -
38: e781776 = 63: 8a2e420 CMakeLists: add default "x64-windows" arch for Visual Studio
-
39: 4ba6071 = 64: 18be188 hash-object: add another >4GB/LLP64 test case
-
40: ef9c70a = 65: 95ecab6 setup: properly use "%(prefix)/" when in WSL
-
41: a01142e = 66: c7408ed Add config option
windows.appendAtomically -
44: fd85652 = 67: 27a2aa8 MinGW: link as terminal server aware
-
50: 757181d = 69: fd13a7b commit: accept "scissors" with CR/LF line endings
-
52: cd6f05c = 71: caf4b9c git-gui: accommodate for intent-to-add files
-
53: 3941574 = 72: 52f42d4 mingw: allow for longer paths in
parse_interpreter() -
54: dd8d152 = 73: d99009a compat/vcbuild: document preferred way to build in Visual Studio
-
55: 6562e1b = 74: 3c42ea3 http: optionally send SSL client certificate
-
56: 355107a = 75: ece966c ci: run
contrib/subtreetests in CI builds -
57: f6b875e = 76: df5b02f CMake: show Win32 and Generator_platform build-option values
-
58: 8c0a37f = 77: 4fde1bf hash-object: add a >4GB/LLP64 test case using filtered input
-
59: f11b111 = 78: ec464e7 compat/mingw.c: do not warn when failing to get owner
-
60: c8044cf = 79: 124b7a3 mingw: $env:TERM="xterm-256color" for newer OSes
-
61: 92b9a46 = 80: d4be768 winansi: check result and Buffer before using Name
-
62: 1af95a1 = 81: 9e13e3f mingw: change core.fsyncObjectFiles = 1 by default
-
64: c9e04e4 = 83: 03b4477 status: fix for old-style submodules with commondir
-
74: 3ce805b = 84: d8658e9 ci: work around a problem with HTTP/2 vs libcurl v8.10.0
-
76: 3d0b23a = 85: 7823428 revision: create mark_trees_uninteresting_dense()
-
78: 0734a70 = 86: de7bd1f survey: stub in new experimental 'git-survey' command
-
122: 4d04bbd = 87: a3f5305 Merge 'remote-hg-prerequisites' into HEAD
-
80: 08ad354 = 88: 331d087 survey: add command line opts to select references
-
82: 2e26b22 = 90: 1e82adb survey: start pretty printing data in table form
-
124: 47a1050 = 91: fd0bf56 Merge branch 'dont-clean-junctions'
-
86: f5b35cf = 94: 8592edf survey: summarize total sizes by object type
-
126: db656ca = 95: 7c6ba53 Update mimalloc to v2.2.7 (#6048)
-
88: ec09cbb = 96: 209c819 survey: show progress during object walk
-
89: 6dcaa5a = 97: fc55158 mingw: make sure
errnois set correctly when socket operations fail -
127: acc31e8 = 98: dc8ab81 Merge pull request #2375 from assarbad/reintroduce-sideband-config
-
91: 7d6d10f = 99: f99c0d1 http: optionally load libcurl lazily
-
92: 5e032eb = 100: 53841b0 survey: add ability to track prioritized lists
-
93: 70508ee = 101: 3e37ecd compat/mingw: handle WSA errors in strerror
-
94: 1fb799c = 102: 89abfd0 t5563: verify that NTLM authentication works
-
128: fc632a2 = 103: 8f331cd Merge pull request #2488 from bmueller84/master
-
96: d492c7e = 104: 544a782 http: support lazy-loading libcurl also on Windows
-
97: 72bd946 = 105: a699988 survey: add report of "largest" paths
-
98: 1d2051f = 106: 89b5c21 compat/mingw: drop outdated comment
-
99: f61e3eb = 107: 3516ec6 http: disallow NTLM authentication by default
-
129: e846ab4 = 108: 027ddbb Merge pull request #2501 from jeffhostetler/clink-debug-curl
-
101: 678a5b6 = 109: caefedd http: when loading libcurl lazily, allow for multiple SSL backends
-
102: bafb9bd = 110: 3666a46 survey: add --top= option and config
-
103: 3d76f48 = 111: 3363a37 t0301: actually test credential-cache on Windows
-
104: 80c3453 = 112: 6f1a00e http: warn if might have failed because of NTLM
-
130: c9b7005 = 113: 3528042 Merge pull request #2504 from dscho/access-repo-via-junction
-
106: b99dfd2 = 115: 4e3a73d mingw: do load libcurl dynamically by default
-
107: 9daea57 = 116: 5a6708f Add a GitHub workflow to verify that Git/Scalar work in Nano Server
-
108: 2b48957 = 117: 245eaf0 mingw: suggest
windows.appendAtomicallyin more cases -
109: 25ee59f = 118: 93801b2 win32: use native ANSI sequence processing, if possible
-
110: 35d6401 = 119: 93cbd49 common-main.c: fflush stdout buffer upon exit
-
111: 3029680 = 120: 2725dad t5601/t7406(mingw): do run tests with symlink support
-
112: 4f5e29d = 121: 926f0ca win32: ensure that
localtime_r()is declared even in i686 builds -
113: cc9e7ed = 122: 3a3b4bb Fallback to AppData if XDG_CONFIG_HOME is unset
-
114: 7c1ee03 = 123: e71cfba run-command: be helpful with Git LFS fails on Windows 7
-
115: bcba070 = 124: 5b5d096 survey: clearly note the experimental nature in the output
-
116: 00a2928 = 125: 9277866 credential-cache: handle ECONNREFUSED gracefully
-
117: 34f61c8 = 126: d010bd2 reftable: do make sure to use custom allocators
-
118: 8c37534 = 127: 9b6438e check-whitespace: avoid alerts about upstream commits
-
119: 5e2a18c = 128: b6ccec3 t/t5571-prep-push-hook.sh: Add test with writing to stderr
-
120: ae2f6c1 = 129: 500897c credential: advertise NTLM suppression and allow helpers to re-enable
-
121: 2c65c28 = 130: 6065276 dir: do not traverse mount points
-
281: d812a1f ! 131: c914e7f Detect number of cores better on multi-socket systems (#6108)
@@ ## Metadata ## -Author: Johannes Schindelin <Johannes.Schindelin@gmx.de> +Author: Matthias Aßhauer <mha1993@live.de> ## Commit message ## - Detect number of cores better on multi-socket systems (#6108) + win32: thread-utils: handle multi-socket systems - While the currently used way to detect the number of CPU cores ond - Windows is nice and straight-forward, GetSystemInfo() only [gives us - access to the number of processors within the current - group.](https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/ns-sysinfoapi-system_info#members) + While the currently used way to detect the number of CPU cores on + Windows is nice and straight-forward, GetSystemInfo() only gives us + access to the number of processors within the current group. [1] While that is usually fine for systems with a single physical CPU, separate physical sockets are typically separate groups. - Switch to using GetLogicalProcessorInformationEx() to handle - multi-socket + Switch to using GetLogicalProcessorInformationEx() to handle multi-socket systems better. - I've tested this on a physical single-socket x86-64 and a physical - dual-socket x86-64 system, and on a virtual single-socket ARM64 system. - Physical [multi-socket ARM64 systems seem to - exist](https://cloudbase.it/ampere-altra-industry-leading-arm64-server/), - but I don't have access to such hardware and the hypervisor I use - apparently can't emulate that either. + [1] https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/ns-sysinfoapi-system_info#members + + This fixes https://github.com/git-for-windows/git/issues/4766 + + Co-Authored-by: Herman Semenov <GermanAizek@yandex.ru> + Signed-off-by: Matthias Aßhauer <mha1993@live.de> ## thread-utils.c ## @@ thread-utils.c: int online_cpus(void)
-
131: 516fd7e = 132: 01d9d58 Merge pull request #2535 from dscho/schannel-revoke-best-effort
-
132: 3d4e370 = 133: be3dead Merge pull request #2618 from dscho/avoid-d/f-conflict-in-vs/master
-
134: f7fd791 = 135: 4c29516 Merge pull request #2714 from lbonanomi/crlf-scissors
-
135: 1d1f29f = 136: 55f28ae Merge pull request #2655 from jglathe/jg/t0014_trace_extra_info
-
136: c428167 = 137: d26600b Merge 'git-gui/js/intent-to-add'
-
137: 8c41b95 = 138: 5228dc7 Merge pull request #2351 from PhilipOakley/vcpkg-tip
-
138: 6fd7d6c = 139: 1533e76 Merge pull request #2915 from dennisameling/windows-arm64-support
-
139: bc48302 = 140: 3dbcf9f Merge pull request #3327 from dennisameling/fix-host-cpu
-
140: 90a13d2 = 141: 2cb1f4b Merge pull request #3165 from dscho/increase-allowed-length-of-interpreter-path
-
141: 3c8107b = 142: 5abc347 Merge pull request #3220 from dscho/there-is-no-vs/master-anymore
-
142: 85a890e = 143: 003c92d Merge pull request #3293 from pascalmuller/http-support-automatically-sending-client-certificate
-
143: 2a27135 = 144: 5b73b66 Merge pull request #3349 from vdye/feature/ci-subtree-tests
-
144: 78ad5cb = 145: 37c108f Merge pull request #3306 from PhilipOakley/vs-sln
-
145: 411d273 = 146: c0feff5 Merge pull request #3533 from PhilipOakley/hashliteral_t
-
146: 3d00ed6 = 147: 7eafbaa Merge pull request #3791: Various fixes around
safe.directory -
147: a83a078 = 148: 478db94 Merge pull request #3751 from rkitover/native-term
-
148: 2ae612b = 149: 9598e09 Merge pull request #3875 from 1480c1/wine/detect_msys_tty
-
149: 25a0571 = 150: f6e9008 Merge branch 'optionally-dont-append-atomically-on-windows'
-
150: eb158d0 = 151: 5409efd Merge branch 'fsync-object-files-always'
-
151: 7cdf49c = 152: ce57cf0 Merge pull request #3942 from rimrul/mingw-tsaware
-
152: 48a48e5 = 153: 26020a9 Fix Windows version resources (#4092)
-
153: 4c4a17f = 154: d560bcd Fix global repository field not being cleared (#4083)
-
154: b569d15 = 155: b78ed4a Skip linking the "dashed"
git-<command>s for built-ins (#4252) -
155: 2a16b27 = 156: bcebe6a Add full
mingw-w64-git(i.e. regular MSYS2 ecosystem) support (#5971) -
156: 3808b4b = 157: e0ead7f Merge pull request #2506 from dscho/issue-2283
-
157: 769f698 = 158: 5323705 Merge pull request #2974 from derrickstolee/maintenance-and-headless
-
158: 85c94a1 = 159: 37d1754 ARM64: Embed manifest properly (#4718)
-
159: 4424483 = 160: d29b7ca Lazy load libcurl, allowing for an SSL/TLS backend-specific libcurl (#4410)
-
161: 6d99b46 = 162: 4074b2d Additional error checks for issuing the windows.appendAtomically warning (#4528)
-
162: 9ebee4e = 163: 703554e win32: use native ANSI sequence processing, if possible (#4700)
-
163: de437a1 = 164: 9fccac7 common-main.c: fflush stdout buffer when exit (#4901)
-
164: e4372ab = 165: c0fafbd Merge branch 'run-t5601-and-t7406-with-symlinks-on-windows-10'
-
165: 07b7c71 = 166: b2246f7 Merge branch 'Fix-i686-build-with-GCC-v14'
-
166: 333e9c9 = 167: 4cb218a Merge branch 'Fallback-to-AppData-if-XDG-CONFIG-HOME-is-unset'
-
167: 73f7f59 = 168: 51bdce3 Merge branch 'run-command-be-helpful-when-Git-LFS-fails-on-Windows-7'
-
168: e6683e8 = 169: e1b0f9a pack-objects: create new name-hash algorithm (#5157)
-
169: 372f617 = 170: 1d2791f Add path walk API and its use in 'git pack-objects' (#5171)
-
170: 5cfa8b3 = 171: 100601a Add experimental 'git survey' builtin (#5174)
-
171: 57f85a0 = 172: 4f5c257 credential-cache: handle ECONNREFUSED gracefully (#5329)
-
172: ca945b5 = 173: 94ad219 Merge branch 'reftable-vs-custom-allocators'
-
173: e2e195a = 174: a86f36d Merge branch 'check-whitespace-only-downstream'
-
174: d526ec6 = 175: ba7dba3 t/t5571-prep-push-hook.sh: Add test with writing to stderr (#6063)
-
175: 3e18e4d = 176: 4f6bc5c Merge branch 'disallow-ntlm-auth-by-default'
-
176: e709097 = 177: 079b3a1 Don't traverse mount points in
remove_dir_recurse()(#6151) -
-: ---------- > 178: 24d5477 Detect number of cores better on multi-socket systems (#6108)
-
177: e61f8d3 = 179: 3bb8fe2 Merge branch 'ready-for-upstream'
-
178: b58f633 = 180: a4321bd ci(macos): skip the
git p4tests -
179: f9d1d1d = 181: 8bc1b07 ci(macos): skip the
git p4tests (#5954) -
182: 1b64cbe = 182: ce38b02 Win32: make FILETIME conversion functions public
-
184: 582869f = 183: 13c7e40 Win32: dirent.c: Move opendir down
-
185: b78b12c = 184: b4da4b3 mingw: make the dirent implementation pluggable
-
186: 8c86209 = 185: 8bee354 Win32: make the lstat implementation pluggable
-
187: a4f6589 = 186: 0c9e756 mingw: add infrastructure for read-only file system level caches
-
188: 42c3630 = 187: 334ebc5 mingw: add a cache below mingw's lstat and dirent implementations
-
189: 440723b = 188: 454f0ac fscache: load directories only once
-
190: 6501d72 = 189: d5c4c1c fscache: add key for GIT_TRACE_FSCACHE
-
191: ef1bef2 = 190: 49894e9 fscache: remember not-found directories
-
192: 20b9ffb = 191: f9070a9 fscache: add a test for the dir-not-found optimization
-
193: 6755914 = 192: 594768b add: use preload-index and fscache for performance
-
194: fbdcdc8 = 193: ecac59f dir.c: make add_excludes aware of fscache during status
-
195: 5841fd0 = 194: 5a21a3e fscache: make fscache_enabled() public
-
196: de694f8 = 195: d372225 dir.c: regression fix for add_excludes with fscache
-
197: 58bff10 = 196: e1d3ea4 fetch-pack.c: enable fscache for stats under .git/objects
-
198: da78c68 = 197: e8bb84c checkout.c: enable fscache for checkout again
-
199: 167701f = 198: 4aefc7f Enable the filesystem cache (fscache) in refresh_index().
-
200: 55df681 = 199: e8170b2 fscache: use FindFirstFileExW to avoid retrieving the short name
-
201: cba451a = 200: 6291bc5 fscache: add GIT_TEST_FSCACHE support
-
202: 390adfe = 201: aac4cfc fscache: add fscache hit statistics
-
180: c77043f = 202: 819b1bd git-gui--askyesno: fix funny text wrapping
-
203: dd4a4b3 = 203: 85a3acb unpack-trees: enable fscache for sparse-checkout
-
181: 763e396 = 204: dad28d6 git-gui--askyesno (mingw): use Git for Windows' icon, if available
-
204: 7f8a492 = 205: 43f6fc7 status: disable and free fscache at the end of the status command
-
205: 80fac0b = 207: 9c9a415 mem_pool: add GIT_TRACE_MEMPOOL support
-
206: 5ab65f9 = 208: 9bb3c64 fscache: fscache takes an initial size
-
207: 8fb6658 = 209: 0b45ce6 fscache: update fscache to be thread specific instead of global
-
208: b1936de = 210: 7983d1c fscache: teach fscache to use mempool
-
209: 2f36bb9 = 211: 33c78ea fscache: make fscache_enable() thread safe
-
210: b929876 = 212: 6b6cb44 fscache: teach fscache to use NtQueryDirectoryFile
-
211: 25d5f67 = 213: d7884fa fscache: remember the reparse tag for each entry
-
213: 7060cb3 = 215: 0ffb4b1 fscache: implement an FSCache-aware is_mount_point()
-
214: 7e51e58 = 216: 94db8cd Merge pull request #1909 from benpeart/free-fscache-after-status-gfw
-
216: 4b6e4e1 = 218: edefd96 Merge remote-tracking branch 'benpeart/fscache-per-thread-gfw'
-
217: 32a5a58 = 219: d8eed32 Merge branch 'dont-clean-junctions-fscache'
-
218: b563be0 = 220: fccc413 pack-objects (mingw): demonstrate a segmentation fault with large deltas
-
220: 8e17755 = 222: 43412fa win32(long path support): leave drive-less absolute paths intact
-
221: 0aa298b = 223: 9501d7c compat/fsmonitor/fsm-*-win32: support long paths
-
222: 1baa88e = 224: 67f8390 clean: suggest using
core.longPathsif paths are too long to remove -
223: 41d725f = 225: 73ac509 mingw: Support
git_terminal_promptwith more terminals -
224: 0beffa6 = 226: c1426b3 compat/terminal.c: only use the Windows console if bash 'read -r' fails
-
225: 733150d = 227: a96fb7d mingw (git_terminal_prompt): do fall back to CONIN$/CONOUT$ method
-
226: 9e4877c = 228: 9a6c468 Win32: symlink: move phantom symlink creation to a separate function
-
227: 61cf20f = 229: 0a555d5 Introduce helper to create symlinks that knows about index_state
-
228: ac778f5 = 230: c898bd9 mingw: allow to specify the symlink type in .gitattributes
-
229: 54bd9f9 = 231: 17423d0 Win32: symlink: add test for
symlinkattribute -
230: 5007623 = 232: 7c81672 mingw: explicitly specify with which cmd to prefix the cmdline
-
231: 832ff67 = 233: ddf9680 mingw: when path_lookup() failed, try BusyBox
-
233: 4c518c6 = 234: 316b61f test-tool: learn to act as a drop-in replacement for
iconv -
235: d669bbc = 235: 5d2846f tests(mingw): if
iconvis unavailable, usetest-helper --iconv -
237: c4a2d6f = 236: cf989b8 gitattributes: mark .png files as binary
-
239: 03de80b = 237: 4f6fbb9 tests: move test PNGs into t/lib-diff/
-
241: dbf386d = 238: c4171e3 tests: only override sort & find if there are usable ones in /usr/bin/
-
242: 6c43f8a = 239: 873c019 tests: use the correct path separator with BusyBox
-
243: 7008129 = 240: 7a45da9 mingw: only use Bash-ism
builtin pwd -Wwhen available -
244: 7200e10 = 241: 6d20b2d tests (mingw): remove Bash-specific pwd option
-
245: 0e2e73f = 242: 78a5ea9 test-lib: add BUSYBOX prerequisite
-
247: 13ec468 = 243: de8c15c t5003: use binary file from t/lib-diff/
-
232: 4f1155a = 244: b5206bf mingw: introduce code to detect whether we're inside a Windows container
-
249: 094cde6 = 245: 92cb19c t5532: workaround for BusyBox on Windows
-
234: 767bac4 = 246: c783fff mingw: when running in a Windows container, try to rename() harder
-
251: d851bef = 247: 32a4464 t5605: special-case hardlink test for BusyBox-w32
-
236: 7adf156 = 248: 6859232 mingw: move the file_attr_to_st_mode() function definition
-
253: bc3e3b9 = 249: badc24d t5813: allow for $PWD to be a Windows path
-
238: f78fcc1 = 250: 27b12d7 mingw: Windows Docker volumes are not symbolic links
-
256: c42f7ab = 251: 77dcc74 t9200: skip tests when $PWD contains a colon
-
259: 6f645b2 = 252: 22fc1fb mingw: kill child processes in a gentler way
-
240: a2ecb64 = 253: 37d70b9 mingw: work around rename() failing on a read-only file
-
260: 9b78ca2 = 254: 1d200a9 mingw: optionally enable wsl compability file mode bits
-
246: 62e9a63 = 256: 6a7f0d8 Merge branch 'gitk-and-git-gui-patches'
-
252: c0bd917 = 259: 60b727b Merge 'docker-volumes-are-no-symlinks'
-
254: 75c8f49 = 260: 300646a mingw: try resetting the read-only bit if rename fails (#4527)
-
257: 30de94f = 261: 7100a98 Merge pull request #1897 from piscisaureus/symlink-attr
-
255: 2f41394 = 262: 72a3970 Describe Git for Windows' architecture [no ci]
-
258: 727975e = 264: 72d7647 Modify the Code of Conduct for Git for Windows
-
264: 9d72073 = 265: 30a604f Merge branch 'wsl-file-mode-bits'
-
262: c1d50c5 = 266: 58fd045 CONTRIBUTING.md: add guide for first-time contributors
-
266: 831674a = 267: 9791cce Partially un-revert "editor: save and reset terminal after calling EDITOR"
-
267: d62509e = 268: 501a00f Merge pull request #1170 from dscho/mingw-kill-process
-
265: 740290b = 269: fd477c6 README.md: Add a Windows-specific preamble
-
269: 56c6d41 = 270: 62d2e08 reset: reinstate support for the deprecated --stdin option
-
270: ba39999 = 271: 110b30f Merge branch 'un-revert-editor-save-and-reset'
-
271: b0318a0 = 273: 16b7071 Add a GitHub workflow to monitor component updates
-
273: b009655 = 274: 7352f8c fsmonitor: reintroduce core.useBuiltinFSMonitor
-
274: 5fece07 = 275: 026addb Merge branch 'phase-out-reset-stdin'
-
272: be78449 = 276: 2cc60b6 Modify the GitHub Pull Request template (to reflect Git for Windows)
-
275: 7a0eb33 = 277: 02dd76d dependabot: help keeping GitHub Actions versions up to date
-
277: 4706500 = 278: 59ecda6 Merge branch 'deprecate-core.useBuiltinFSMonitor'
-
276: 238fecd = 279: e401869 SECURITY.md: document Git for Windows' policies
-
278: 7ebd9ec = 280: 94caf38 Merge pull request #2837 from dscho/monitor-component-updates
-
280: bf6d375 < -: ---------- Winansi: Drop pre-Vista workaround (#6109)