Releases: microsoft/git
v2.50.1.vfs.0.0
This is a security fix release, addressing CVE-2024-50349, CVE-2024-52006, CVE-2025-27613, CVE-2025-27614, CVE-2025-46334, CVE-2025-46835, CVE-2025-48384, CVE-2025-48385, and CVE-2025-48386.
New Features
- Comes with Git v2.50.1.
Bug Fixes
- CVE-2025-27613, Gitk: When a user clones an untrusted repository and runs Gitk without additional command arguments, any writable file can be created and truncated. The option "Support per-file encoding" must have been enabled. The operation "Show origin of this line" is affected as well, regardless of the option being enabled or not.
- CVE-2025-27614, Gitk: A Git repository can be crafted in such a way that a user who has cloned the repository can be tricked into running any script supplied by the attacker by invoking
gitk filename
, wherefilename
has a particular structure. - CVE-2025-46334, Git GUI (Windows only): A malicious repository can ship versions of sh.exe or typical textconv filter programs such as astextplain. On Windows, path lookup can find such executables in the worktree. These programs are invoked when the user selects "Git Bash" or "Browse Files" from the menu.
- CVE-2025-46835, Git GUI: When a user clones an untrusted repository and is tricked into editing a file located in a maliciously named directory in the repository, then Git GUI can create and overwrite any writable file.
- CVE-2025-48384, Git: When reading a config value, Git strips any trailing carriage return and line feed (CRLF). When writing a config entry, values with a trailing CR are not quoted, causing the CR to be lost when the config is later read. When initializing a submodule, if the submodule path contains a trailing CR, the altered path is read resulting in the submodule being checked out to an incorrect location. If a symlink exists that points the altered path to the submodule hooks directory, and the submodule contains an executable post-checkout hook, the script may be unintentionally executed after checkout.
- CVE-2025-48385, Git: When cloning a repository Git knows to optionally fetch a bundle advertised by the remote server, which allows the server-side to offload parts of the clone to a CDN. The Git client does not perform sufficient validation of the advertised bundles, which allows the remote side to perform protocol injection. This protocol injection can cause the client to write the fetched bundle to a location controlled by the adversary. The fetched content is fully controlled by the server, which can in the worst case lead to arbitrary code execution.
- CVE-2025-48386, Git: The wincred credential helper uses a static buffer (
target
) as a unique key for storing and comparing against internal storage. This credential helper does not properly bounds check the available space remaining in the buffer before appending to it withwcsncat()
, leading to potential buffer overflows.
Full Changelog: v2.50.0.vfs.0.1...v2.50.1.vfs.0.0
v2.50.0.vfs.0.1
Fixes the Windows-only problem in v2.50.0 where SSH clones could hang indefinitely (git-for-windows#5682, git-for-windows#5688).
Full Changelog: v2.50.0.vfs.0.0...v2.50.0.vfs.0.1
v2.50.0.vfs.0.0
This release of microsoft/git includes all changes from upstream Git v2.50.0 and Git for Windows v2.50.0.windows.1.
Known Issues
- [Windows only] SSH clones can hang indefinitely (git-for-windows#5682, git-for-windows#5688)
What's Changed
Full Changelog: v2.49.0.vfs.0.4...v2.50.0.vfs.0.0
v2.49.0.vfs.0.4
What's Changed
- gvfs-helper-client: clean up server process by @derrickstolee in #756
- Set
http.version=HTTP/1.1
insupports_gvfs_protocol()
by @dscho in #759 - scalar: add test to verify http.version=HTTP/1.1 is set for Azure Repos URLs by @copilot-swe-agent in #754
- Fix very long
t5799-gvfs-helper.sh
runtimes in our CI runs by @dscho in #760 - Fix
osx-gcc
CI build failures by @dscho in #762 - ci(scalar): work around bug in
actions/setup-dotnet
by @dscho in #765 - Fix Coverity builds by @dscho in #764
- Fix a typo in
release-winget
by @dscho in #750
Full Changelog: v2.49.0.vfs.0.3...v2.49.0.vfs.0.4
v2.49.0.vfs.0.3
What's Changed
- release-winget.yml: fix submission pwsh script by @mjcheetham in #747
- Update behavior for postCommand.strategy=post-index-change by @derrickstolee in #748
- Re-fixed #730
Full Changelog: v2.49.0.vfs.0.2...v2.49.0.vfs.0.3
v2.49.0.vfs.0.2
What's Changed
- Upgrade
ubuntu-20.04
jobs by @dscho in #743 - Fix various issues with build-git-installers.yml by @mjcheetham in #741
- build-git-installers.yml: use Win/ARM64 hosted runners by @mjcheetham in #744
- Fix REF_DELTA chain bug in 'git index-pack' by @dscho in #745
Full Changelog: v2.49.0.vfs.0.1...v2.49.0.vfs.0.2
v2.49.0.vfs.0.1
What's Changed
- Permit
repack
command in Scalar clones by @mjcheetham in #732 - hooks: add custom post-command hook config by @derrickstolee in #736
- build-git-installers: decouple the VS registry settings from the autoupdater by @dscho in #740
- winget-release: fix workflow version parsing by @mjcheetham in #737
- Move secrets to Azure Key Vault by @mjcheetham in #738
Full Changelog: v2.49.0.vfs.0.0...v2.49.0.vfs.0.1
v2.49.0.vfs.0.0
This release of microsoft/git includes all changes from upstream Git v2.49.0 and Git for Windows v2.49.0.windows.1.
What's Changed
Full Changelog: v2.48.1.vfs.0.1...v2.49.0.vfs.0.0
v2.48.1.vfs.0.1
This release of microsoft/git includes all changes from upstream Git v2.48.1 and Git for Windows v2.48.1.windows.1.
What's Changed
- Fix Git hooks console issue (#730)
- Fix Cygwin
FAST_CWD
pointer issue in newest Windows 11 Preview builds (git-for-windows#5447; git-for-windows/msys2-runtime#86)
Full Changelog: .v2.48.1.vfs.0.0...v2.48.1.vfs.0.1
v2.48.1.vfs.0.0
This release of microsoft/git includes all changes from upstream Git v2.48.1 and Git for Windows v2.48.1.windows.1.
What's Changed
Full Changelog: v2.47.2.vfs.0.3...v2.48.1.vfs.0.0