如何在 Windows 上卸载 Git
Git for Windows 就是 git 命令行工具,加上 Git Bash 和几个辅助程序,它本身不保存你的任何仓库。克隆下来的项目在磁盘上你自己选的位置,不管装没装 Git 都是普通文件夹,照常能用。如果 %USERPROFILE%\.gitconfig 里有别名、签名密钥路径这类不想重新配置的设置,先备份它。这份指南覆盖官方 Git for Windows 安装器,不管选的是按用户还是按机器安装。
先关掉正在用 Git 的东西
Git 本身没有常驻进程或托盘图标,只在命令执行时才运行。卸载前先关掉正在跑 Git 操作的终端、IDE 里的 Git 集成,或者 GUI 客户端(Git Bash、GitHub Desktop 之类)。
用自带的卸载器移除应用
打开「设置 › 应用 › 已安装的应用」,找到 Git,选择卸载,或者运行:
winget uninstall --id Git.Git
按用户安装的卸载不需要管理员权限;按机器安装的需要。Git for Windows
数据分别在哪里
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
%USERPROFILE%\.gitconfig |
你的名字、邮箱、别名和其他全局设置(参见 Git 自己的配置文件说明) | 不打算从头配置的话就保留,纯文本,容易看懂 |
安装目录自己的 etc\gitconfig(按机器安装在 %ProgramFiles%\Git 下,按用户安装在对应的安装目录下) |
Git for Windows 自带的系统级默认值,不是你自己加的东西 | 随应用一起删除 |
Windows 凭据管理器里以 git: 开头的条目 |
如果用过 Git Credential Manager 走 HTTPS,这里存着 GitHub 之类服务的登录凭据 | 在「凭据管理器」(控制面板)里单独查看,卸载 Git 不会动它 |
| 磁盘上任意一个仓库文件夹 | 你真正的项目历史 | 卸载 Git 本身不会动它 |
检查结果
不管卸载没卸载 Git,下面这些只读命令都能运行:
Get-Process git,git-bash -ErrorAction SilentlyContinue
winget list --id Git.Git
Test-Path "$env:ProgramFiles\Git"
Test-Path "$env:LOCALAPPDATA\Programs\Git"
git --version
Get-Process没有输出只表示未观察到匹配进程,被忽略的查询错误不能当作已经退出。winget list正常完成且没有匹配,才说明包记录已经没了;列出一行,说明 Git 还装着。- 两条
Test-Path分别对应按机器和按用户安装,任意一条返回True,说明 Git 的程序文件还在。 git --version打印出版本号,说明git还在 PATH 里;报错只说明这次调用失败,不能证明所有 Git 安装都已删除。
用 winget 安装时
winget uninstall 运行的是「设置 › 应用」用的同一个卸载器,删的是同一批程序文件,它不会主动动 %USERPROFILE%\.gitconfig 或你保存的凭据。
Mole 会列出什么
这次只用 Mole 检查了 Git 的安装体积,并确认它没有常驻进程和自启动项,没有对这个安装跑卸载审查,也就是那种把每一条残留列出来、标好默认是否勾选的检查。这一节不描述那样的检查会给 Git 列出什么。
这次检查覆盖了什么
Git for Windows 2.55.0.3 在 2026 年 9 月 25 日只做了检查,没有卸载:核对了它显示的体积和 Windows 设置里的是否一致,确认了它没有常驻进程、没有注册自启动项。卸载本身,以及 Mole 的卸载审查会给它列出并勾选什么,都没有测试。
