Skip to content
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

  1. 前往 Mercurial 官网 下载并安装适合你系统的版本。
  2. 安装完成后,重启 SourceTree。
  3. SourceTree 应该能自动识别到系统已安装的 Mercurial,从而避免重复下载。

方法二:手动设置 Mercurial 路径

  1. 打开 SourceTree。
  2. 点击菜单栏的 工具 > 选项
  3. 在左侧选择 Git
  4. 找到 Mercurial 部分,点击 浏览,选择本地安装的 hg.exe 路径(通常位于 C:\Program Files\Mercurial)。
  5. 保存设置并重启 SourceTree。

方法三:清除缓存或重装 SourceTree

如果上述方法无效,可以尝试以下操作:

  • 清除缓存

    • 删除 SourceTree 的配置文件夹,路径通常为:

      C:\Users\你的用户名\AppData\Local\Atlassian\SourceTree
    • 重启 SourceTree,让它重新生成配置。

  • 卸载重装

    • 卸载当前版本的 SourceTree。
    • 清理残留文件后重新安装最新版本。

方法四:直接修改配置文件禁用 Mercurial(推荐)

如果你不需要使用 Mercurial,或者以上方法都无法解决问题,可以直接通过修改配置文件来禁用 Mercurial 支持,从而彻底避免自动下载行为。

修改步骤如下:
  1. 关闭 SourceTree

  2. 找到配置文件 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
  3. 使用文本编辑器(如记事本、VS Code、Notepad++)打开 user.config 文件。

  4. 查找如下配置项:

    <setting name="EnableHgSupport" serializeAs="String">
        <value>True</value>
    </setting>
  5. <value>True</value> 修改为 <value>False</value>

    <setting name="EnableHgSupport" serializeAs="String">
        <value>False</value>
    </setting>
  6. 保存文件并重新启动 SourceTree。

⚠️ 注意:修改配置文件前请备份原始文件,以防修改错误导致 SourceTree 无法启动。


📝 总结

SourceTree 每次启动都下载 Mercurial 是一个常见但可解决的问题。通过安装本地 Mercurial、手动配置路径、清除缓存或重装软件,大多数情况下都可以解决。如果仍然无效,修改配置文件禁用 Mercurial 支持 是一个非常有效的终极手段。