Skip to content

Merge 'readme' into HEAD

7e509c4
Select commit
Loading
Failed to load commit list.
Merged

Rebase to v2.54.0-rc1 #6166

Merge 'readme' into HEAD
7e509c4
Select commit
Loading
Failed to load commit list.
GitForWindowsHelper / shears-next succeeded Apr 10, 2026 in 0s

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

  • 10: 41eb777 = 10: cdee857 transport-helper: add trailing --

  • 30: 2d3c5eb = 11: c025c4e mingw: demonstrate a git add issue 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

  • 14: 08f0383 = 17: ceaa529 mingw: use mimalloc

  • 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

  • 42: 421a00a = 29: ff0b8c7 mingw: stop hard-coding CC = gcc

  • 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

  • 18: 4d6289b = 38: 4e35319 vcpkg_install: detect lack of Git

  • 73: d84053d = 39: 1b348ba mingw: ensure valid CTYPE

  • 19: fdbdd1f = 40: 4499bb9 vcpkg_install: add comment regarding slow network connections

  • 75: 1912f57 = 41: 213720f mingw: allow git.exe to 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

  • 24: df71bd1 = 50: 5d8abfb Add schannel to curl installation

  • 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/subtree test target

  • 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

  • 100: d02a1fd = 68: be9656f cmake: install headless-git.

  • 50: 757181d = 69: fd13a7b commit: accept "scissors" with CR/LF line endings

  • 51: a19cf0a = 70: 1c9ff03 t0014: fix indentation

  • 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/subtree tests 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

  • 63: 7a04497 = 82: 57c6d24 Fix Windows version resources

  • 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

  • 123: d71603b = 89: fc06949 Merge branch 'drive-prefix'

  • 82: 2e26b22 = 90: 1e82adb survey: start pretty printing data in table form

  • 124: 47a1050 = 91: fd0bf56 Merge branch 'dont-clean-junctions'

  • 84: dc5b5c4 = 92: 4bc87cb survey: add object count summary

  • 125: 21d9f3a = 93: 415b7d9 Merge branch 'msys2-python'

  • 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 errno is 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

  • 105: d77134c = 114: 251e01e git.rc: include winuser.h

  • 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.appendAtomically in 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

  • 133: b25243a = 134: c51cb87 Merge 'add-p-many-files'

  • 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)

  • 160: 57d7c35 = 161: eaf51b9 Merge branch 'nano-server'

  • 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 p4 tests

  • 179: f9d1d1d = 181: 8bc1b07 ci(macos): skip the git p4 tests (#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

  • 183: 260a226 = 206: 56be33e Merge branch 'git-gui-askyesno'

  • 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

  • 212: 4cf835a = 214: 1d0ede2 Merge branch 'fscache'

  • 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

  • 215: c4c16d6 = 217: 05797ac clean: make use of FSCache

  • 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

  • 219: 0f59e64 = 221: e6a8ddb mingw: support long paths

  • 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.longPaths if paths are too long to remove

  • 223: 41d725f = 225: 73ac509 mingw: Support git_terminal_prompt with 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 symlink attribute

  • 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 iconv is unavailable, use test-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 -W when 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

  • 263: 7832372 = 255: 35fd433 mingw: really handle SIGINT

  • 246: 62e9a63 = 256: 6a7f0d8 Merge branch 'gitk-and-git-gui-patches'

  • 248: e72a76f = 257: 585939c Merge branch 'long-paths'

  • 250: fc62db2 = 258: b246c60 Merge branch 'msys2'

  • 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]

  • 261: f3cfff4 = 263: 09dc47d Merge branch 'busybox-w32'

  • 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'

  • 268: 93ed29d = 272: 223e8e3 Add an issue template

  • 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

  • 279: 0d01e2f = 281: 9ccdc34 Merge 'readme' into HEAD

  • 280: bf6d375 < -: ---------- Winansi: Drop pre-Vista workaround (#6109)