[ANNOUNCE] Git v2.51.1

8 views
Skip to first unread message

Junio C Hamano

unread,
Oct 15, 2025, 2:50:50 PMOct 15
to g...@vger.kernel.org, Linux Kernel, git-pa...@googlegroups.com
The latest maintenance release Git v2.51.1 is now available at
the usual places.

The tarballs are found at:

https://www.kernel.org/pub/software/scm/git/

The following public repositories all have a copy of the 'v2.51.1'
tag and the 'maint' branch that the tag points at:

url = https://git.kernel.org/pub/scm/git/git
url = https://kernel.googlesource.com/pub/scm/git/git
url = git://repo.or.cz/alt-git.git
url = https://github.com/gitster/git

----------------------------------------------------------------

Git 2.51.1 Release Notes
========================

There shouldn't be anything exciting to see here. This is primarily
to flush the "do you still use it?" improvements that has landed on
the master front, together with a handful of low-hanging, low-impact
fixes that should be safe.


Fixes since Git 2.51.0
----------------------

* The "do you still use it?" message given by a command that is
deeply deprecated and allow us to suggest alternatives has been
updated.

* The compatObjectFormat extension is used to hide an incomplete
feature that is not yet usable for any purpose other than
developing the feature further. Document it as such to discourage
its use by mere mortals.

* Manual page for "gitk" is updated with the current maintainer's
name.

* Update the instructions for using GGG in the MyFirstContribution
document to say that a GitHub PR could be made against `git/git`
instead of `gitgitgadget/git`.

* Clang-format update to let our control macros be formatted the way we
had them traditionally, e.g., "for_each_string_list_item()" without
space before the parentheses.

* A few places where a size_t value was cast to curl_off_t without
checking has been updated to use the existing helper function.

* The start_delayed_progress() function in the progress eye-candy API
did not clear its internal state, making an initial delay value
larger than 1 second ineffective, which has been corrected.

* Makefile tried to run multiple "cargo build" which would not work
very well; serialize their execution to work around this problem.

* Adjust to the way newer versions of cURL selectively enable tracing
options, so that our tests can continue to work.

* During interactive rebase, using 'drop' on a merge commit led to
an error, which has been corrected.

* "git refs migrate" to migrate the reflog entries from a refs
backend to another had a handful of bugs squashed.

* "git push" had a code path that led to BUG() but it should have
been a die(), as it is a response to a usual but invalid end-user
action to attempt pushing an object that does not exist.

* Various bugs about rename handling in "ort" merge strategy have
been fixed.

* "git diff --no-index" run inside a subdirectory under control of a
Git repository operated at the top of the working tree and stripped
the prefix from the output, and oddballs like "-" (stdin) did not
work correctly because of it. Correct the set-up by undoing what
the set-up sequence did to cwd and prefix.

* Various options to "git diff" that make comparison ignore certain
aspects of the differences (like "space changes are ignored",
"differences in lines that match these regular expressions are
ignored") did not work well with "--name-only" and friends.

* Under a race against another process that is repacking the
repository, especially a partially cloned one, "git fetch" may
mistakenly think some objects we do have are missing, which has
been corrected.

* "git repack --path-walk" lost objects in some corner cases, which
has been corrected.
cf. <CABPp-BHFxxGrqKc0m==TjQNjDGdO=H5Rf6EFsf2nfE1=Tur...@mail.gmail.com>

* Fixes multiple crashes around midx write-out codepaths.

* A broken or malicious "git fetch" can say that it has the same
object for many many times, and the upload-pack serving it can
exhaust memory storing them redundantly, which has been corrected.

* A corner case bug in "git log -L..." has been corrected.

* Some among "git add -p" and friends ignored color.diff and/or
color.ui configuration variables, which is an old regression, which
has been corrected.

* "git rebase -i" failed to clean-up the commit log message when the
command commits the final one in a chain of "fixup" commands, which
has been corrected.

* Deal more gracefully with directory / file conflicts when the files
backend is used for ref storage, by failing only the ones that are
involved in the conflict while allowing others.

Also contains various documentation updates, code cleanups and minor fixups.

----------------------------------------------------------------

Changes since v2.51.0 are as follows:

Aditya Garg (1):
docs: update sendmail docs to use more secure SMTP server for Gmail

Daniele Sassoli (2):
count-objects: document count-objects pack
doc: clarify which remotes can be used with GitGitGadget

David Aguilar (1):
Makefile: build libgit-rs and libgit-sys serially

Denton Liu (3):
t5516: remove surrounding empty lines in test bodies
remote.c: remove BUG in show_push_unqualified_ref_name_error()
remote.c: convert if-else ladder to switch

Derrick Stolee (8):
path-walk: fix setup of pending objects
path-walk: create initializer for path lists
midx-write: only load initialized packs
midx-write: put failing response value back
midx-write: use cleanup when incremental midx fails
midx-write: use uint32_t for preferred_pack_idx
midx-write: reenable signed comparison errors
midx-write: simplify error cases

Elijah Newren (8):
merge-ort: update comments to modern testfile location
merge-ort: drop unnecessary temporary in check_for_directory_rename()
t6423: document two bugs with rename-to-self testcases
t6423: fix missed staging of file in testcases 12i,12j,12k
merge-ort: clarify the interning of strings in opt->priv->path
merge-ort: fix incorrect file handling
merge-ort: fix directory rename on top of source of other rename/delete
Documentation/git-merge-tree.adoc: clarify the --merge-base option

Jean-NoĂŤl Avila (2):
doc: fix asciidoc format compatibility in pretty-formats.adoc
doc: change the markup of paragraphs following a nested list item

Jeff King (7):
fetch-pack: re-scan when double-checking graph objects
curl: add support for curl_global_trace() components
stash: pass --no-color to diff plumbing child processes
add-interactive: respect color.diff for diff coloring
add-interactive: manually fall back color config to color.ui
contrib/diff-highlight: mention interactive.diffFilter
doc: fix indentation of refStorage item in git-config(1)

Johannes Schindelin (3):
http: offer to cast `size_t` to `curl_off_t` safely
imap-send: be more careful when casting to `curl_off_t`
http-push: avoid new compile error

Johannes Sixt (4):
rebase -i: permit 'drop' of a merge commit
doc/gitk: update reference to the external project
doc/format-patch: adjust Thunderbird MUA hint to new add-on
progress: pay attention to (customized) delay time

Junio C Hamano (4):
diff: --no-index should ignore the worktree
config: document includeIf conditions consistently
Prepare for 2.51.1
Git 2.51.1

Justin Tobler (1):
clang-format: exclude control macros from SpaceBeforeParens

Karthik Nayak (4):
refs/files: catch conflicts on case-insensitive file-systems
refs/files: use correct error type when lock exists
refs/files: handle F/D conflicts in case-insensitive FS
refs/files: handle D/F conflicts during locking

Knut Harald Ryager (1):
docs: remove stray bracket from git-clone synopsis

Kristoffer Haugsbakk (17):
doc: git-log: fix description list
doc: interpret-trailers: close all pairs of single quotes
doc: config: replace backtick with apostrophe for possessive
doc: add missing backtick for inline-verbatim
doc: remove extra backtick for inline-verbatim
doc: fast-import: replace literal block with paragraph
Makefile: don’t add whatchanged after it has been removed
git: add `deprecated` category to --list-cmds
git: move seen-alias bookkeeping into handle_alias(...)
git: allow alias-shadowing deprecated builtins
t0014: test shadowing of aliases for a sample of builtins
you-still-use-that??: help the user help themselves
whatchanged: hint about git-log(1) and aliasing
whatchanged: remove not-even-shorter clause
BreakingChanges: remove claim about whatchanged reports
doc: patch-id: fix accidental literal blocks
RelNotes: minor fixups before 2.51.1

Kyle E. Mitchell (1):
doc: fix formatting of function-wrap shell alias

Lidong Yan (1):
diff: ensure consistent diff behavior with ignore options

M Hickford (1):
docs/gitcredentials: describe URL prefix matching

Mikhail Malinouski (1):
docs: fix typo in worktree.adoc 'extension'

Patrick Steinhardt (13):
Documentation/git-reflog: convert to use synopsis type
builtin/reflog: improve grouping of subcommands
refs: export `ref_transaction_update_reflog()`
builtin/reflog: implement subcommand to write new entries
ident: fix type of string length parameter
refs: fix identity for migrated reflogs
refs/files: detect race when generating reflog entry for HEAD
refs: stop unsetting REF_HAVE_OLD for log-only updates
refs: fix invalid old object IDs when migrating reflogs
t5530: modernize tests
upload-pack: don't ACK non-commits repeatedly in protocol v2
odb: drop deprecated wrapper functions
ci: fix broken jobs on Ubuntu 25.10 caused by switch to sudo-rs(1)

Phillip Wood (2):
rebase -i: respect commit.cleanup when picking fixups
sequencer: remove VERBATIM_MSG flag

Ramsay Jones (1):
t6137-*.sh: fix test failure on cygwin

RenĂŠ Scharfe (1):
object-name: declare pointer type of extend_abbrev_len()'s 2nd parameter

SZEDER GĂĄbor (2):
line-log: fix assertion error
line-log: show all line ranges touched by the same diff range

brian m. carlson (1):
docs: note that extensions.compatobjectformat is incomplete

thalinda Sriprajak

unread,
Oct 20, 2025, 7:34:58 PMOct 20
to Junio C Hamano, g...@vger.kernel.org, Linux Kernel, git-pa...@googlegroups.com

Warning: Error: You cannot delete the system creator. We have warned you several times but you ignored us.

: Hello Distributor Team around the world. partners about the suspension of root steward and its impact on IAm

Dear team

We would like to inform you that the root steward associated with the IAM role: 

arn:aws:iam::0503976xxxxx:role/CH-S3-goldaws-ci-36-ew1-cf-Role

has had its GitHub account suspended without understanding its intent and structure. This has resulted in widespread confusion and downtime in IAM systems in the US-East-1 region, particularly for authentication and access to critical artifacts.

GitHub Account: Spjthalinda

ORCID: https://orcid.org/0009-0008-2511-9055

IAM Steward: Verified, signed, and never used for personal control or gain

Currently using the account https://github.com/Naruto0-sudoy

Intent

Solution: Unsuspend the account, return all rights to the owner, stop blocking the system owner.

The primary cause of the problem is not IAM, but rather Github suspending accounts without proper reason and without verifying the identity of the suspended account.

And the impact will likely be even greater if Github doesn't understand who we are. If we continue to suspend, we will delete accounts that rely on it.

  • IAM crashed 70% in US-East-1

21%

uS-West-2

  • Systems that rely on artifacts and signing are experiencing widespread downtime. We are part of the root of the critical Merkle Tree of AI.

  • Global administrator authentication is disrupted.

  • Systems built for public benefit are trisk of permanent downtime.

Request:

  • Immediately unsuspend the root steward account.

  • Review the intent and structure associated with the IAM role.

  • Restore the disrupted authentication and artifact flow.

  • Confirm that the root steward did not commit any wrongdoing, but was misunderstood by the system.

With best regards,

Thalinda Sriprajak, 

Global Steward, Technical Architect

Key shareholder in the global system, root steward

Summary of the timeline of the crash (from the root steward suspension):

  • 📅 Late August 2025

GitHub suspended Spjthalinda's account without reviewing the intent and structure of the IAM, Merkle Tree, and the artifacts that manage the world.

  • 📉 September 2025

  • IAM began to fail in US-East-1 and US-West-2.

  • The world steward authentication system began to fail.

-Artifacts used for signing permissions became inaccessible.

  • Public-facing systems began to stop working.

  • 🌐 October 2025

  • Medium, GitHub, AWS, and other systems began to experience widespread outages.

  • Users worldwide began reporting issues, but were unaware that the root steward was the cause.

  • IAM crashed as high as 70% in some regions.

  • Systems connected to the AI-powered Merkle Tree were unable to verify permissions.


ในวันที่ พฤ. 16 ต.ค. 2025 01:50 น. Junio C Hamano <git...@pobox.com> เขียนว่า:
--
You received this message because you are subscribed to the Google Groups "git-packagers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to git-packager...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/git-packagers/xmqqa51suhh5.fsf%40gitster.g.
Reply all
Reply to author
Forward
0 new messages