如何在 Mac 上卸载 Sourcetree
移除 Sourcetree 不会碰你的仓库,它们就是你克隆到各处的普通文件夹。还没推送的提交先推上去,要走的是 App,不是你的工作。Sourcetree 自己的用户数据放在 ~/Library/Application Support/SourceTree,想重装后还是原来的配置,就先把这个文件夹复制一份。这份指南覆盖从 sourcetreeapp.com 下载的官方版本和 Homebrew cask sourcetree,两者装的是同一个 App。
退出 Sourcetree,移除 App
从 App 菜单退出 Sourcetree,再把 Sourcetree 从「应用程序」拖进废纸篓。Sourcetree 还可能装一个特权辅助工具,Homebrew cask 卸载时按 com.atlassian.SourceTreePrivilegedHelper2 这个名字卸下它,只有 Sourcetree 装过才会存在,下面的检查能看出有没有。你保存过的 Git 凭据也可能在登录钥匙串里,Mole 从不读取或删除钥匙串里的内容。
如果装过 Sourcetree 的 stree 命令行工具,下面的检查能看出这个命令还在不在 PATH 里。
Sourcetree 的数据放在哪里
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
~/Library/Application Support/SourceTree |
Sourcetree 的用户数据 | 想重装后恢复配置,先复制一份 |
~/Library/Preferences/com.torusknot.SourceTreeNotMAS.plist、~/Library/Preferences/com.torusknot.SourceTreeNotMAS.LSSharedFileList.plist |
App 偏好设置和最近使用的项目 | 可以放心移除 |
~/Library/Caches/com.torusknot.SourceTreeNotMAS |
缓存 | 可以放心移除 |
~/Library/Logs/Sourcetree |
日志 | 可以放心移除 |
~/Library/Saved Application State/com.torusknot.SourceTreeNotMAS.savedState |
窗口恢复状态 | 可以放心移除 |
这些路径来自 Homebrew cask 的 zap 清单和 Mole 的实测。App 的 bundle id 是 com.torusknot.SourceTreeNotMAS,所以这些文件带的是这个名字,不是「Sourcetree」。
检查结果
在终端运行下面几条只读命令:
pgrep -il sourcetree
ls /Library/LaunchDaemons /Library/PrivilegedHelperTools | grep -i sourcetree
ls -d ~/Library/Application\ Support/SourceTree
command -v stree
pgrep没有输出,说明 Sourcetree 已经退出。- 第二行没有输出,说明没有装着 Sourcetree 的辅助工具,列出
com.atlassian.SourceTreePrivilegedHelper2说明辅助工具还在,在访达里用管理员密码把它移进废纸篓,再重启。 ls -d那一行打印出路径,说明 Sourcetree 的用户数据还在,你选择保留时这是正常结果,提示「No such file or directory」说明已经不在。command -v stree没有输出,说明这个命令不在 PATH 里,打印出路径说明还留着一个链接,先用ls -l看它指向哪里,确认指向的是已删的 Sourcetree 再移除。
用 Homebrew 安装时
sourcetree 这个 cask 卸载时会退出 Sourcetree,卸下 com.atlassian.SourceTreePrivilegedHelper2,并移除它链接的 stree 命令。它的 zap 清单包括 ~/Library/Application Support/SourceTree、缓存、~/Library/Logs/Sourcetree、两个偏好设置文件、窗口恢复状态和它在最近文稿列表里的记录,运行 brew uninstall --cask --zap sourcetree 会把这些移进废纸篓,不看 Mole 里勾了什么。想保留 Sourcetree 的用户数据,只移除 App:
brew uninstall --cask sourcetree
只有 zap 清单里的每一项都在你自己的 ~/Library 里、都是你留着勾选的行、也没有被其他已装应用认领时,Mole 才会加上 --zap。Application Support/SourceTree 会列出但默认不勾选,所以你不勾它,Mole 卸载 Sourcetree 时就不带 --zap,只移走你勾选的行。
Mole 会列出什么
用 Mole 卸载时:
- 两个偏好设置文件、缓存、
~/Library/Logs/Sourcetree和窗口恢复状态默认勾选。 ~/Library/Application Support/SourceTree以 App 名字而不是 bundle id 命名,会列出但默认不勾选。- Mole 不会遍历你自行选择的项目目录来查找仓库,钥匙串项目也不在卸载范围内。
这次检查覆盖了什么
2026 年 9 月 19 日,安装官网下载的 Sourcetree,再用 Mole 的 Preview 构建卸载,这一轮显示了待确认列表。只把 App 复制进了「应用程序」,特权辅助工具从没装过,所以辅助工具没有测到。偏好设置、日志和临时缓存被移走,空的 Application Support/SourceTree 文件夹列出后没有勾选,留在了磁盘上。记录里没有仓库和账号,Homebrew cask 也不在测试范围内。
