2 Commits

Author SHA256 Message Date
fda7c73f1c Update to factory version 2025-08-22 11:08:38 -03:00
972e527526 Sync changes to SLFO-1.2 branch 2025-08-20 09:17:41 +02:00
9 changed files with 9 additions and 643 deletions

View File

@@ -2,7 +2,7 @@ Index: git/read-cache.c
===================================================================
--- git.orig/read-cache.c
+++ git/read-cache.c
@@ -1142,10 +1142,13 @@ static int has_dir_name(struct index_sta
@@ -1135,10 +1135,13 @@ static int has_dir_name(struct index_sta
size_t len;
for (;;) {

View File

@@ -6,7 +6,7 @@ Index: git/contrib/completion/git-completion.bash
===================================================================
--- git.orig/contrib/completion/git-completion.bash
+++ git/contrib/completion/git-completion.bash
@@ -82,10 +82,12 @@
@@ -81,10 +81,12 @@
# case insensitively, even on systems with case sensitive file systems
# (e.g., completing tag name "FOO" on "git checkout f<TAB>").

BIN
git-2.51.0.tar.sign Normal file

Binary file not shown.

BIN
git-2.51.0.tar.xz LFS Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5818bd7d80b061bbbdfec8a433d609dc8818a05991f731ffc4a561e2ca18c653
size 7993096

View File

@@ -1,637 +1,3 @@
-------------------------------------------------------------------
Mon Feb 2 19:34:46 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
- Update to 2.53.0:
- UI, Workflows & Features
- "git maintenance" command learned "is-needed" subcommand to
tell if it is necessary to perform various maintenance tasks.
- "git replay" (experimental) learned to perform ref updates
itself in a transaction by default, instead of emitting where
each refs should point at and leaving the actual update to
another command.
- "git blame" learns "--diff-algorithm=<algo>" option.
- "git repo info" learned "--all" option.
- Both "git apply" and "git diff" learn a new whitespace error
class, "incomplete-line".
- Add a new manual that describes the data model.
- "git fast-import" learns "--signed-commits=strip-if-invalid"
option to drop invalid cryptographic signature from objects.
- The use of "revision" (a connected set of commits) has been
clarified in the "git replay" documentation.
- A help message from "git branch" now mentions "git help"
instead of "man" when suggesting to read some documentation.
- "git repo struct" learned to take "-z" as a synonym to
"--format=nul".
- More object database related information are shown in "git
repo structure" output.
- Improve the error message when a bad argument is given to the
`--onto` option of "git replay". Test coverage of "git
replay" has been improved.
- The iconv library on macOS fails to correctly handle stateful
ISO/IEC 2022:1994 encoded strings. Work it around instead of
replacing it wholesale from homebrew.
- Upstream symbolic link support on Windows from
Git-for-Windows.
- Performance, Internal Implementation, Development Support etc.
- The list of packfiles used in a running Git process is moved
from the packed_git structure into the packfile store.
- Some ref backend storage can hold not just the object name of
an annotated tag, but the object name of the object the tag
points at. The code to handle this information has been
streamlined.
- As "git diff --quiet" only cares about the existence of any
changes, disable rename/copy detection to skip more expensive
processing whose result will be discarded anyway.
- A part of code paths that deals with loose objects has been
cleaned up.
- "make strip" has been taught to strip "scalar" as well as
"git".
- Dockerized jobs at the GitHub Actions CI have been taught to
show more details of failed tests.
- Code refactoring around object database sources.
- Halve the memory consumed by artificial filepairs created
during "git diff --find-copies-harder", also making the
operation run faster.
- The "git_istream" abstraction has been revamped to make it
easier to interface with pluggable object database design.
- Rewrite the only use of "mktemp()" that is subject to TOCTOU
race and Stop using the insecure "mktemp()" function. (merge
10bba537c4 rs/ban-mktemp later to maint).
- In-code comment update to clarify that single-letter options
are outside of the scope of command line completion script.
(merge dc8a00fafe jc/completion-no-single-letter-options
later to maint).
- MEMZERO_ARRAY() helper is introduced to avoid clearing only
the first N bytes of an N-element array whose elements are
larger than a byte.
- "git diff-files -R --find-copies-harder" has been taught to
use the potential copy sources from the index correctly.
- Require C99 style flexible array member support from all
platforms.
- The code path that enumerates promisor objects have been
optimized to skip pointlessly parsing blob objects.
- Prepare test suite for Git for Windows that supports symbolic
links.
- Import newer version of "clar", unit testing framework.
(merge 84071a6dea ps/clar-integers later to maint).
- The packfile_store data structure is moved from object store
to odb source.
- The object-info API has been cleaned up.
- Further preparation to upstream symbolic link support on
Windows.
- Remove implicit reliance on the_repository global in the APIs
around tree objects and make it explicit which repository to
work in.
- "git bugreport" and "git version --build-options" learned to
include use of 'gettext' feature, to make it easier to
diagnose problems around l10n.
- Dscho observed that SVN tests are taking too much time in CI
leak checking tasks, but most time is spent not in our code
but in libsvn code (which happen to be written in Perl),
whose leaks have little value to discover for us. Skip SVN,
P4, and CVS tests in the leak checking tasks. (merge
047bd7dfe3 js/ci-leak-skip-svn later to maint).
- Fixes since v2.52
- Ever since we added whitespace rules for this project, we
misspelt an entry, which has been corrected. (merge
358e94dc70 jc/gitattributes-whitespace-no-indent-fix later to
maint).
- The code to expand attribute macros has been rewritten to
avoid recursion to avoid running out of stack space in an
uncontrolled way. (merge 42ed046866
jk/attr-macroexpand-wo-recursion later to maint).
- Adding a repository that uses a different hash function is a
no-no, but "git submodule add" did not prevent it, which has
been corrected. (merge 6fe288bfbc
bc/submodule-force-same-hash later to maint).
- An earlier check added to osx keychain credential helper to
avoid storing the credential itself supplied was overeager
and rejected credential material supplied by other helper
backends that it would have wanted to store, which has been
corrected. (merge 4580bcd235
kn/osxkeychain-idempotent-store-fix later to maint).
- The "git repo structure" subcommand tried to align its output
but mixed up byte count and display column width, which has
been corrected. (merge 7a03a10a3a
jx/repo-struct-utf8width-fix later to maint).
- Yet another corner case fix around renames in the "ort" merge
strategy. (merge a562d90a35 en/ort-rename-another-fix later
to maint).
- Test leakfix. (merge 14b561e768 jk/test-mktemp-leakfix later
to maint).
- Update a version of action used at the GitHub Actions CI.
(merge cd99203f86 js/ci-github-setup-go-update later to
maint).
- The "return errno = EFOO, -1" construct, which is heavily
used in compat/mingw.c and triggers warnings under "-Wcomma",
has been rewritten to avoid the warnings. (merge af3919816f
js/mingw-assign-comma-fix later to maint).
- Makefile based build have recently been updated to build a
libgit.a that also has reftable and xdiff objects; CMake
based build procedure has been updated to match. (merge
b0d5c88cca js/cmake-libgit-fix later to maint).
- Under-allocation fix. (merge d22a488482
js/wincred-get-credential-alloc-fix later to maint).
- "git worktree list" attempts to show paths to worktrees while
aligning them, but miscounted display columns for the paths
when non-ASCII characters were involved, which has been
corrected. (merge 08dfa59835
pw/worktree-list-display-width-fix later to maint).
- "Windows+meson" job at the GitHub Actions CI was hard to
debug, as it did not show and save failed test artifacts,
which has been corrected. (merge 17bd1108ea
jk/ci-windows-meson-test-fix later to maint).
- Emulation code clean-up. (merge 2367c6bcd6
gf/win32-pthread-cond-wait-err later to maint).
- Various issues detected by Asan have been corrected. (merge
a031b6181a jk/asan-bonanza later to maint).
- "git config get --path" segfaulted on an ":(optional)path"
that does not exist, which has been corrected. (merge
0bd16856ff jc/optional-path later to maint).
- The "--committer-date-is-author-date" option of "git
am/rebase" is a misguided one. The documentation is updated
to discourage its use. (merge fbf3d0669f
kh/doc-committer-date-is-author-date later to maint).
- The option help text given by "git config unset -h" described
the "--all" option to "replace", not "unset", multiple
variables, which has been corrected. (merge 18bf67b753
rs/config-unset-opthelp-fix later to maint).
- The error message given by "git config set", when the
variable being updated has more than one values defined, used
old style "git config" syntax with an incorrect option in its
hint, both of which have been corrected. (merge df963f0df4
rs/config-set-multi-error-message-fix later to maint).
- "git replay" forgot to omit the "gpgsig-sha256" extended
header from the resulting commit the same way it omits
"gpgsig", which has been corrected. (merge 9f3a115087
pw/replay-exclude-gpgsig-fix later to maint).
- A few tests have been updated to work under the shell
compatible mode of zsh. (merge a92f243a94 bc/zsh-testsuite
later to maint).
- The way patience diff finds LCS has been optimized. (merge
c7e3b8085b yc/xdiff-patience-optim later to maint).
- Recent optimization to "last-modified" command introduced use
of uninitialized block of memory, which has been corrected.
(merge fe4e60759b tc/last-modified-active-paths-optimization
later to maint).
- "git last-modified" used to mishandle "--" to mark the
beginning of pathspec, which has been corrected. (merge
05491b90ce js/last-modified-with-sparse-checkouts later to
maint).
- Emulation code clean-up. (merge 42aa7603aa
gf/win32-pthread-cond-init later to maint).
- "git submodule add" to add a submodule under <name>
segfaulted, when a submodule.<name>.something is already in
.gitmodules file without defining where its
submodule.<name>.path is, which has been corrected. (merge
dd8e8c786e jc/submodule-add later to maint).
- "git fetch" that involves fetching tags, when a tag being
fetched needs to overwrite existing one, failed to fetch
other tags, which has been corrected. (merge b7b17ec8a6
kn/fix-fetch-backfill-tag-with-batched-ref-updates later to
maint).
- Document "rev-list --filter-provided-objects" better. (merge
6d8dc99478 jt/doc-rev-list-filter-provided-objects later to
maint).
- Even when there is no changes in the packfile and no need to
recompute bitmaps, "git repack" recomputed and updated the
MIDX file, which has been corrected. (merge 6ce9d558ce
ps/repack-avoid-noop-midx-rewrite later to maint).
- Update HTTP tests to adjust for changes in curl 8.18.0 (merge
17f4b01da7 jk/test-curl-updates later to maint).
- Workaround the "iconv" shipped as part of macOS, which is
broken handling stateful ISO/IEC 2022 encoded strings. (merge
cee341e9dd rs/macos-iconv-workaround later to maint).
- Running "git diff" with "--name-only" and other options that
allows us not to look at the blob contents, while objects
that are lazily fetched from a promisor remote, caused
use-after-free, which has been corrected.
- The ort merge machinery hit an assertion failure in a history
with criss-cross merges renamed a directory and a
non-directory, which has been corrected. (merge 979ee83e8a
en/ort-recursive-d-f-conflict-fix later to maint).
- Diagnose invalid bundle-URI that lack the URI entry, instead
of crashing. (merge 7796c14a1a sb/bundle-uri-without-uri
later to maint).
- Mailmap update for Karsten (merge e97678c4ef
js/mailmap-karsten-blees later to maint).
- Perf-test fixes. (merge 79d301c767 jk/t-perf-fixes later to
maint).
- Fix for a performance regression in "git cat-file". (merge
9e8b448dd8 jk/cat-file-avoid-bitmap-when-unneeded later to
maint).
- Update a FAQ entry on synching two separate repositories
using the "git stash export/import" recently introduced.
(merge 02fc44a989 bc/doc-stash-import-export later to maint).
- "git fsck" used inconsistent set of refs to show a confused
warning, which has been corrected.
- Some error messages from the http transport layer lacked the
terminating newline, which has been corrected. (merge
a8227ae8d5 kt/http-backend-errors later to maint).
- "git repack --geometric" did not work with promisor packs,
which has been corrected.
- The logic that avoids reusing MIDX files with a wrong
checksum was broken, which has been corrected.
- Refreshed patches:
CVE-2024-24577.patch
completion-wordbreaks.diff
setup-don-t-fail-if-commondir-reference-is-deleted.patch
-------------------------------------------------------------------
Mon Nov 17 23:05:38 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Update to 2.52.0:
- UI, Workflows & Features
- The "list" subcommand of "git refs" acts as a front-end for
"git for-each-ref".
- "git cmd --help-all" now works outside repositories.
- "git diff-tree" learned "--max-depth" option.
- A new subcommand "git repo" gives users a way to grab various
repository characteristics.
- A new command "git last-modified" has been added to show the
closest ancestor commit that touched each path.
- The "git refs exists" command that works like "git show-ref
--exists" has been added.
- "git repo info" learns the short-hand option "-z" that is the
same as "--format=nul", and learns to report the objects
format used in the repository.
- "core.commentChar=auto" that attempts to dynamically pick a
suitable comment character is non-workable, as it is too much
trouble to support for little benefit, and is marked as
deprecated.
- "git send-email" learned to drive "git imap-send" to store
already sent e-mails in an IMAP folder.
- The "promisor-remote" capability mechanism has been updated
to allow the "partialCloneFilter" settings and the "token"
value to be communicated from the server side.
- Declare that "git init" that is not otherwise configured uses
'main' as the initial branch, not 'master', starting Git 3.0.
- Keep giving hint about the default initial branch name for
users who may be surprised after Git 3.0 switch-over.
- The stash.index configuration variable can be set to make
"git stash pop/apply" pretend that it was invoked with
"--index".
- "git fast-import" learned that "--signed-commits=<how>"
option that corresponds to that of "git fast-export".
- Marking a hunk 'selected' in "git add -p" and then splitting
made all the split pieces 'selected'; this has been changed
to make them all 'undecided', which gives better end-user
experience.
- Configuration variables that take a pathname as a value (e.g.
blame.ignorerevsfile) can be marked as optional by prefixing
":(optional)" before its value.
- Show 'P'ipe command in "git add -p".
- "git sparse-checkout" subcommand learned a new "clean" action
to prune otherwise unused working-tree files that are outside
the areas of interest.
- "git fast-import" is taught to handle signed tags, just like
it recently learned to handle signed commits, in different
ways.
- A new configuration variable commitGraph.changedPaths allows
to turn "--changed-paths" on by default for "git
commit-graph".
- "Symlink symref" has been added to the list of things that
will disappear at Git 3.0 boundary.
- "git maintenance" command learns the "geometric" strategy
where it 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.
- string_list_split*() family of functions have been extended
to simplify common use cases.
- Arrays of strbuf is often a wrong data structure to use, and
strbuf_split*() family of functions that create them often
have better alternatives. Update several code paths and
replace strbuf_split*().
- Revision traversal limited with pathspec, like "git log
dir/*", used to ignore changed-paths Bloom filter when the
pathspec contained wildcards; now they take advantage of the
filter when they can.
- Doc lint updates to encourage the newer and easier-to-use
`synopsis` format, with fixes to a handful of existing uses.
- Remove dependency on the_repository and other globals from
the commit-graph code, and other changes unrelated to
de-globaling.
- Discord has been added to the first contribution
documentation as another way to ask for help.
- Inspired by Ezekiel's recent effort to showcase Rust
interface, the hash function implementation used to hash
lines have been updated to the one used for ELF symbol lookup
by Glibc.
- Instead of scanning for the remaining items to see if there
are still commits to be explored in the queue, use khash to
remember which items are still on the queue (an unacceptable
alternative is to reserve one object flag bits).
- The bulk-checkin code used to depend on a file-scope static
singleton variable, which has been updated to pass an
instance throughout the callchain.
- The work to build on the bulk-checkin infrastructure to
create many objects at once in a transaction and to abstract
it into the generic object layer continues.
- CodingGuidelines now spells out how bitfields are to be
written.
- Adjust to the way newer versions of cURL selectively enable
tracing options, so that our tests can continue to work.
- The clear_alloc_state() API function was not fully clearing
the structure for reuse, but since nobody reuses it, replace
it with a variant that frees the structure as well, making
the callers simpler.
- "git range-diff" learned a way to limit the memory consumed
by O(N*N) cost matrix.
- Some places in the code confused a variable that is *not* a
boolean to enable color but is an enum that records what the
user requested to do about color. A couple of bugs of this
sort have been fixed, while the code has been cleaned up to
prevent similar bugs in the future.
- The build procedure based on meson learned a target to only
build documentation, similar to "make doc".
- Dip our toes a bit to (optionally) use Rust implemented
helper called from our C code.
- Documentation for "git log --pretty" options has been updated
to make it easier to translate.
- Instead of three library archives (one for git, one for
reftable, and one for xdiff), roll everything into a single
libgit.a archive. This would help later effort to FFI into
Rust.
- The beginning of SHA1-SHA256 interoperability work.
- Build procedure for a few credential helpers (in contrib/)
have been updated.
- CI improvements to handle the recent Rust integration better.
- The code in "git repack" machinery has been cleaned up to
prepare for incremental update of midx files.
- Two slightly different ways to get at "all the packfiles" in
API has been cleaned up.
- 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.
- Build procedure for Wincred credential helper has been
updated.
- The build procedure based on meson learned to allow builders
to specify the directory to install HTML documents.
- Building "git contacts" script (in contrib/) left the
resulting file unexecutable, which has been corrected.
- Fixes since v2.51 Unless otherwise noted, all the changes in
2.51.X maintenance track, including security updates, are
included in this release.
- During interactive rebase, using 'drop' on a merge commit
lead to an error, which was incorrect.
- "git refs migrate" to migrate the reflog entries from a refs
backend to another had a handful of bugs squashed.
- "git remote rename origin upstream" failed to move
origin/HEAD to upstream/HEAD when origin/HEAD is unborn and
performed other renames extremely inefficiently, which has
been corrected.
- "git describe" has been optimized by using better data
structure.
- "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 jump" (in contrib/) fails to parse the diff header
correctly when a file has a space in its name, which has been
corrected.
- "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 makes 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.
- The above caused regressions, which has been corrected.
- Documentation for "git rebase" has been updated.
- 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.
- 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.
- "git log -L..." compared trees of multiple parents with the
tree of the merge result in an unnecessarily inefficient way.
- 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 fetch" can clobber a symref that is dangling when the
remote-tracking HEAD is set to auto update, which has been
corrected.
- "git describe <blob>" misbehaves and/or crashes in some
corner cases, which has been taught to exit with failure
gracefully.
- 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`.
- Makefile tried to run multiple "cargo build" which would not
work very well; serialize their execution to work around this
problem.
- "git repack --path-walk" lost objects in some corner cases,
which has been corrected.
- "git ls-files <pathspec>..." should not necessarily have to
expand the index fully if a sparsified directory is excluded
by the pathspec; the code is taught to expand the index on
demand to avoid this.
- Windows "real-time monitoring" interferes with the execution
of tests and affects negatively in both correctness and
performance, which has been disabled in Gitlab CI.
- 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.
- "git rev-parse --short" and friends failed to disambiguate
two objects with object names that share common prefix longer
than 32 characters, which has been fixed.
- 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 subtree" (in contrib/) did not work correctly when
splitting squashed subtrees, which has been improved.
- Import a newer version of the clar unit testing framework.
- "git send-email --compose --reply-to=<address>" used to add
duplicated Reply-To: header, which made mailservers unhappy.
This 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.
- There are double frees and leaks around setup_revisions() API
used in "git stash show", which has been fixed, and
setup_revisions() API gained a wrapper to make it more
ergonomic when using it with strvec-manged argc/argv pairs.
- 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.
- "git last-modified" operating in non-recursive mode used to
trigger a BUG(), which has been corrected.
- The use of "git config get" command to learn how ANSI color
sequence is for a particular type, e.g., "git config get
--type=color --default=reset no.such.thing", isn't very
ergonomic.
- The "do you still use it?" message given by a command that is
deeply deprecated and allow us to suggest alternatives has
been updated.
- 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.
- "git reflog write" did not honor the configured
user.name/email which has been corrected.
- Handling of an empty subdirectory of .git/refs/ in the
ref-files backend has been corrected.
- Our CI script requires "sudo" that can be told to preserve
environment, but Ubuntu replaced with "sudo" with an
implementation that lacks the feature. Work this around by
reinstalling the original version.
- The reftable backend learned to sanity check its on-disk data
more carefully.
- A lot of code clean-up of xdiff. Split out of a larger topic.
- "git format-patch --range-diff=... --notes=..." did not drive
the underlying range-diff with correct --notes parameter,
ending up comparing with different set of notes from its main
patch output you would get from "git format-patch
--notes=..." for a singleton patch.
- The code in "git add -p" and friends to iterate over hunks
was riddled with bugs, which has been corrected.
- A few more things that patch authors can do to help
maintainer to keep track of their topics better.
- An earlier addition to "git diff --no-index A B" to limit the
output with pathspec after the two directories misbehaved
when these directories were given with a trailing slash,
which has been corrected.
- The "--short" option of "git status" that meant output for
humans and "-z" option to show NUL delimited output format
did not mix well, and colored some but not all things. The
command has been updated to color all elements consistently
in such a case.
- Unicode width table update.
- GPG signing test set-up has been broken for a year, which has
been corrected.
- Recent OpenSSH creates the Unix domain socket to communicate
with ssh-agent under $HOME instead of /tmp, which causes our
test to fail doe to overly long pathname in our test
environment, which has been worked around by using "ssh-agent
-T".
- strbuf_split*() to split a string into multiple strbufs is
often a wrong API to use. A few uses of it have been removed
by simplifying the code.
- "git shortlog" knows "--committer" and "--author" options,
which the command line completion (in contrib/) did not
handle well, which has been corrected.
- "git bisect" command did not react correctly to "git bisect
help" and "git bisect unknown", which has been corrected.
- The 'q'(uit) command in "git add -p" has been improved to
quit without doing any meaningless work before leaving, and
giving EOF (typically control-D) to the prompt is made to
behave the same way.
- The wildmatch code had a corner case bug that mistakenly
makes "foo**/bar" match with "foobar", which has been
corrected.
- 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.
- The patterns used in the .gitignore files use backslash in
the way documented for fnmatch(3); document as such to reduce
confusion.
- drop
0001-t7528-work-around-ETOOMANY-in-OpenSSH-10.1-and-newer.patch
- refreshed CVE-2024-24577.patch
-------------------------------------------------------------------
Fri Oct 31 13:06:34 UTC 2025 - Antonio Larrosa <alarrosa@suse.com>
- Add patch from upstream to fix a test that fails with
openssh 10.1:
* 0001-t7528-work-around-ETOOMANY-in-OpenSSH-10.1-and-newer.patch
-------------------------------------------------------------------
Thu Oct 16 14:08:59 UTC 2025 - Antonio Teixeira <antonio.teixeira@suse.com>
- Update to 2.51.1:
- 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=TuraOQ@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.
-------------------------------------------------------------------
Wed Aug 20 14:22:54 UTC 2025 - Antonio Teixeira <antonio.teixeira@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package git
#
# Copyright (c) 2026 SUSE LLC and contributors
# Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -43,7 +43,7 @@
%bcond_with asciidoctor
%endif
Name: git
Version: 2.53.0
Version: 2.51.0
Release: 0
Summary: Fast, scalable, distributed revision control system
License: GPL-2.0-only

View File

@@ -32,7 +32,7 @@ Index: git/setup.c
===================================================================
--- git.orig/setup.c
+++ git/setup.c
@@ -326,12 +326,20 @@ int get_common_dir_noenv(struct strbuf *
@@ -327,12 +327,20 @@ int get_common_dir_noenv(struct strbuf *
{
struct strbuf data = STRBUF_INIT;
struct strbuf path = STRBUF_INIT;
@@ -56,7 +56,7 @@ Index: git/setup.c
while (data.len && (data.buf[data.len - 1] == '\n' ||
data.buf[data.len - 1] == '\r'))
data.len--;
@@ -342,8 +350,6 @@ int get_common_dir_noenv(struct strbuf *
@@ -343,8 +351,6 @@ int get_common_dir_noenv(struct strbuf *
strbuf_addbuf(&path, &data);
strbuf_add_real_path(sb, path.buf);
ret = 1;