SourceTree每次启动都下载的方法解决
在使用 SourceTree 的过程中,部分用户可能会遇到一个烦人的问题:每次启动 SourceTree 都会尝试从网络下载 Mercurial,提示如下:
正在从 https://product-downloads.atlassian.com/software/sourcetree/windows/Mercurial.zip 下载...这不仅影响启动速度,还可能因网络问题导致加载失败。本文将分析问题原因,并提供多种解决方法,包括一个终极方案:通过修改配置文件禁用 Mercurial 支持。
📌 问题原因
SourceTree 默认内置了 Mercurial(Hg)支持,用于管理 Mercurial 仓库。但在某些情况下,SourceTree 无法识别本地已安装的 Mercurial,导致每次启动都尝试重新下载。
常见原因包括:
- 系统中未安装 Mercurial;
- SourceTree 设置中未正确配置 Mercurial 路径;
- 缓存异常或配置错误;
- 使用的是便携版或安装路径不标准。
Mercurial 是一个另一种版本控制系统,虽然目前 Git 已成为主流,但在一些企业或旧项目中仍然有其应用场景。SourceTree 作为一个功能全面的客户端,保留对 Mercurial 的支持是有意义的。
但如果你不需要使用 Mercurial,完全可以通过配置或修改配置文件来禁用 Mercurial 支持。
✅ 解决方法(推荐方法四)
方法一:安装本地 Mercurial
- 前往 Mercurial 官网 下载并安装适合你系统的版本。
- 安装完成后,重启 SourceTree。
- SourceTree 应该能自动识别到系统已安装的 Mercurial,从而避免重复下载。
方法二:手动设置 Mercurial 路径
- 打开 SourceTree。
- 点击菜单栏的
工具>选项。 - 在左侧选择
Git。 - 找到
Mercurial部分,点击浏览,选择本地安装的hg.exe路径(通常位于C:\Program Files\Mercurial)。 - 保存设置并重启 SourceTree。
方法三:清除缓存或重装 SourceTree
如果上述方法无效,可以尝试以下操作:
清除缓存:
删除 SourceTree 的配置文件夹,路径通常为:
C:\Users\你的用户名\AppData\Local\Atlassian\SourceTree重启 SourceTree,让它重新生成配置。
卸载重装:
- 卸载当前版本的 SourceTree。
- 清理残留文件后重新安装最新版本。
方法四:直接修改配置文件禁用 Mercurial(推荐)
如果你不需要使用 Mercurial,或者以上方法都无法解决问题,可以直接通过修改配置文件来禁用 Mercurial 支持,从而彻底避免自动下载行为。
修改步骤如下:
关闭 SourceTree。
找到配置文件
user.config,路径如下(路径中的用户名和版本号可能不同):C:\Users\你的用户名\AppData\Local\Atlassian\SourceTree.exe_Url_随机字符串\当前版本号\示例路径:
C:\Users\SHANHY\AppData\Local\Atlassian\SourceTree.exe_Url_25nzifpummnkt22uef34bbwcnp0fqdpx\3.4.23.0\user.config使用文本编辑器(如记事本、VS Code、Notepad++)打开
user.config文件。查找如下配置项:
<setting name="EnableHgSupport" serializeAs="String"> <value>True</value> </setting>将
<value>True</value>修改为<value>False</value>:<setting name="EnableHgSupport" serializeAs="String"> <value>False</value> </setting>保存文件并重新启动 SourceTree。
⚠️ 注意:修改配置文件前请备份原始文件,以防修改错误导致 SourceTree 无法启动。
📝 总结
SourceTree 每次启动都下载 Mercurial 是一个常见但可解决的问题。通过安装本地 Mercurial、手动配置路径、清除缓存或重装软件,大多数情况下都可以解决。如果仍然无效,修改配置文件禁用 Mercurial 支持 是一个非常有效的终极手段。
