Security update for git
Announcement ID: | SUSE-SU-2021:2555-1 |
---|---|
Rating: | moderate |
References: | |
Cross-References: | |
CVSS scores: |
|
Affected Products: |
|
An update that solves one vulnerability, contains two features and has two security fixes can now be installed.
Description:
This update for git fixes the following issues:
Update from version 2.26.2 to version 2.31.1 (jsc#SLE-18152)
Security fixes:
- CVE-2021-21300: On case-insensitive file systems with support for symbolic links, if Git is configured globally to apply delay-capable clean/smudge filters (such as Git LFS), Git could run remote code during a clone. (bsc#1183026)
Non security changes:
- Add
sysusers
file to creategit-daemon
user. - Remove
perl-base
andopenssh-server
dependency ongit-core
and provide aperl-Git
package. (jsc#SLE-17838) fsmonitor
bug fixes- Fix
git bisect
to take an annotated tag as a good/bad endpoint - Fix a corner case in
git mv
on case insensitive systems - Require only
openssh-clients
where possible (like Tumbleweed or SUSE Linux Enterprise >= 15 SP3). (bsc#1183580) - Drop
rsync
requirement, not necessary anymore. - Use of
pack-redundant
command is discouraged and will trigger a warning. The replacement isrepack -d
. - The
--format=%(trailers)
mechanism gets enhanced to make it easier to design output for machine consumption. - No longer give message to choose between rebase or merge upon pull if the history
fast-forwards
. - The configuration variable
core.abbrev
can be set tono
to force no abbreviation regardless of the hash algorithm git rev-parse
can be explicitly told to give output as absolute or relative path with the--path-format=(absolute|relative)
option.- Bash completion update to make it easier for end-users to add completion for their custom
git
subcommands. git maintenance
learned to drive scheduled maintenance on platforms whose native scheduling methods are not 'cron'.- After expiring a reflog and making a single commit, the reflog for the branch would record a single entry that
knows both
@{0}
and@{1}
, but we failed to answer "what commit were we on?", i.e.@{1}
git bundle
learns--stdin
option to read its refs from the standard input.
Also, it now does not lose refs when they point at the same object.git log
learned a new--diff-merges=<how>
option.git ls-files
can and does show multiple entries when the index is unmerged, which is a source for confusion unless-s/-u
option is in use. A new option--deduplicate
has been introduced.git worktree list
now annotates worktrees as prunable, shows locked and prunable attributes in--porcelain mode
, and gained a--verbose
option.git clone
tries to locally check out the branch pointed at by HEAD of the remote repository after it is done, but the protocol did not convey the information necessary to do so when copying an empty repository.
The protocol v2 learned how to do so.- There are other ways than
..
for a single token to denote acommit range", namely
<rev>^!and
<rev>^-<n>, but
git range-diff` did not understand them. - The
git range-diff
command learned--(left|right)-only
option to show only one side of the compared range. git mergetool
feeds three versions (base, local and remote) of a conflicted path unmodified. The command learned to optionally prepare these files with unconflicted parts already resolved.- The
.mailmap
is documented to be read only from the root level of a working tree, but a stray file in a bare repository also was read by accident, which has been corrected. git maintenance
tool learned a newpack-refs
maintenance task.- Improved error message given when a configuration variable that is expected to have a boolean value.
- Signed commits and tags now allow verification of objects, whose two object names (one in SHA-1, the other in SHA-256) are both signed.
git rev-list
command learned--disk-usage
option.git diff
,git log
--{skip,rotate}-to=<path>
allows the user to discard diff output for early paths or move them to the end of the output.git difftool
learned--skip-to=<path>
option to restart an interrupted session from an arbitrary path.git grep
has been tweaked to be limited to the sparse checkout paths.git rebase --[no-]fork-point
gained a configuration variablerebase.forkPoint
so that users do not have to keep specifying a non-default setting.git stash
did not work well in a sparsely checked out working tree.- Newline characters in the host and path part of
git://
URL are now forbidden. Userdiff
updates for PHP, Rust, CSS- Avoid administrator error leading to data loss with
git push --force-with-lease[=<ref>]
by introducing--force-if-includes
- only pull
asciidoctor
for the default ruby version - The
--committer-date-is-author-date
option ofrebase
andam
subcommands lost the e-mail address by mistake in 2.29 - The transport protocol v2 has become the default again
git worktree
gained arepair
subcommand,git init --separate-git-dir
no longer corrupts administrative data related to linked worktreesgit maintenance
introduced for repository maintenance tasksfetch.writeCommitGraph
is deemed to be still a bit too risky and is no longer part of thefeature.experimental
set.- The commands in the
diff
family honors thediff.relative
configuration variable. git diff-files
has been taught to say paths that are marked asintent-to-add
are new files, not modified from an empty blob.git gui
now allows opening work trees from the start-up dialog.git bugreport
reports what shell is in use.- Some repositories have commits that record wrong committer timezone;
git fast-import
has an option to pass these timestamps intact to allow recreating existing repositories as-is. git describe
will always use thelong
version when giving its output based misplaced tagsgit pull
issues a warning message until thepull.rebase
configuration variable is explicitly given
Patch Instructions:
To install this SUSE update use the SUSE recommended
installation methods like YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:
-
openSUSE Leap 15.3
zypper in -t patch SUSE-2021-2555=1
-
Basesystem Module 15-SP3
zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP3-2021-2555=1
-
Development Tools Module 15-SP3
zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP3-2021-2555=1
Package List:
-
openSUSE Leap 15.3 (aarch64 ppc64le s390x x86_64 i586)
- git-credential-libsecret-debuginfo-2.31.1-10.3.1
- git-p4-2.31.1-10.3.1
- git-credential-gnome-keyring-2.31.1-10.3.1
- git-core-2.31.1-10.3.1
- git-svn-2.31.1-10.3.1
- git-2.31.1-10.3.1
- perl-Git-2.31.1-10.3.1
- git-daemon-2.31.1-10.3.1
- git-daemon-debuginfo-2.31.1-10.3.1
- git-web-2.31.1-10.3.1
- git-credential-libsecret-2.31.1-10.3.1
- git-credential-gnome-keyring-debuginfo-2.31.1-10.3.1
- git-email-2.31.1-10.3.1
- git-core-debuginfo-2.31.1-10.3.1
- git-arch-2.31.1-10.3.1
- git-gui-2.31.1-10.3.1
- git-debuginfo-2.31.1-10.3.1
- git-debugsource-2.31.1-10.3.1
- gitk-2.31.1-10.3.1
- git-cvs-2.31.1-10.3.1
-
openSUSE Leap 15.3 (noarch)
- git-doc-2.31.1-10.3.1
-
Basesystem Module 15-SP3 (aarch64 ppc64le s390x x86_64)
- git-core-2.31.1-10.3.1
- perl-Git-2.31.1-10.3.1
- git-core-debuginfo-2.31.1-10.3.1
- git-debuginfo-2.31.1-10.3.1
- git-debugsource-2.31.1-10.3.1
-
Development Tools Module 15-SP3 (aarch64 ppc64le s390x x86_64)
- git-svn-2.31.1-10.3.1
- git-cvs-2.31.1-10.3.1
- git-daemon-debuginfo-2.31.1-10.3.1
- git-email-2.31.1-10.3.1
- git-gui-2.31.1-10.3.1
- git-web-2.31.1-10.3.1
- git-2.31.1-10.3.1
- git-arch-2.31.1-10.3.1
- gitk-2.31.1-10.3.1
- git-debuginfo-2.31.1-10.3.1
- git-debugsource-2.31.1-10.3.1
- git-daemon-2.31.1-10.3.1
-
Development Tools Module 15-SP3 (noarch)
- git-doc-2.31.1-10.3.1