返回资讯列表

Sourcetree拉取/提交代码一直转圈?10秒快速解决技巧

来源: 编辑:阿浩 2026-04-24 15:14:06 20次浏览
Sourcetree拉取/提交代码一直转圈?10秒快速解决技巧

Sourcetree拉取/提交代码一直转圈?10秒快速解决技巧

作为开发人员常用的Git图形化工具,Sourcetree以简洁的界面、便捷的操作,成为很多人管理代码的首选。但在日常使用中,不少人会遇到一个棘手问题:点击拉取(Pull)或提交(Commit)代码后,界面一直转圈加载,既不报错也不完成操作,反复重试也无济于事,严重影响开发效率。

其实这个问题无需复杂操作,无需重装软件,更无需重新配置仓库,一个简单的步骤就能快速解决,同时我们也会拆解问题根源,帮你彻底避免后续再踩坑。

一、10秒快速解决:一步到位

无论你使用的是Windows还是Mac版本的Sourcetree,操作步骤完全一致,全程不超过10秒,新手也能轻松上手:

  1. 打开正在转圈的Sourcetree客户端(无需关闭当前操作窗口,直接操作即可);
  2. 在顶部菜单栏找到【工具】选项,点击下拉菜单;
  3. 在下拉菜单中选择【选项】(Mac版本部分翻译为【偏好设置】,功能一致);
  4. 无需修改任何配置,直接点击窗口底部的【保存】按钮;
  5. 关闭【选项】窗口,回到Sourcetree主界面,此时会发现转圈已停止,拉取/提交操作可正常执行。

二、问题根源:SSH密钥丢失/未加载

很多人会疑惑,为什么“打开选项保存一下”就能解决问题?核心原因在于:SSH密钥丢失或未被Sourcetree正确加载,导致工具无法完成与远程仓库的身份验证,进而陷入无限加载状态。

我们都知道,Git通过SSH密钥实现本地与远程仓库的安全连接,Sourcetree会默认读取本地的SSH密钥信息,用于身份验证。但在以下场景中,容易出现SSH密钥“丢失”(未被加载)的情况:

  • 电脑重启后,SSH代理未自动启动,导致Sourcetree无法读取密钥;
  • Sourcetree配置文件缓存异常,导致密钥路径无法被正确识别;
  • 更换Git版本、重装Sourcetree后,密钥配置未被自动同步;
  • 多账户切换、密钥路径修改后,Sourcetree未及时更新配置。
  • 而点击【工具】→【选项】→【保存】的操作,本质是强制Sourcetree重新读取本地SSH密钥配置、刷新缓存,相当于“唤醒”了丢失的密钥连接,无需重新生成或配置密钥,就能快速恢复身份验证功能,解决转圈问题。

三、拓展方案:彻底避免后续再出现

如果频繁出现拉取/提交转圈的情况,仅靠临时保存选项只能治标,建议通过以下2个方法彻底规避,一劳永逸:

方法1:检查并固定SSH密钥配置

  1. 打开Sourcetree,进入【工具】→【选项】;
  2. 在左侧导航栏找到【SSH】选项,查看“SSH客户端”和“私钥路径”;
  3. 确认私钥路径正确(一般默认路径为C:\Users\用户名\.ssh\id_rsa,Mac为~/.ssh/id_rsa),若路径错误,手动修改为本地SSH私钥的实际路径;
  4. 选择“使用内置SSH客户端”(避免与系统SSH冲突),点击【保存】,后续重启工具也能正常加载密钥。

方法2:设置SSH代理自动启动(Windows为例)

  1. 按下Win+R,输入cmd打开命令提示符;
  2. 输入命令 eval "$(ssh-agent -s)" 启动SSH代理;
  3. 再输入命令 ssh-add 私钥路径(如ssh-add C:\Users\用户名\.ssh\id_rsa),将私钥添加到代理;
  4. 设置SSH代理开机自动启动(百度搜索“SSH代理开机自启”,根据系统版本配置,步骤简单),确保重启电脑后密钥仍能被正常加载。

四、常见补充说明

  • 若保存选项后仍无法解决,可检查网络连接(网络不稳定也会导致转圈),或关闭Sourcetree重新打开,重复快速解决步骤;
  • 若提示“Permission denied (publickey)”,说明SSH密钥确实丢失或配置错误,需重新生成密钥并添加到远程仓库(GitHub/GitLab等),具体可参考SSH密钥配置教程;
  • Mac用户操作差异:【工具】→【偏好设置】,其余步骤与Windows一致,保存后即可恢复正常。
  • 总结来说,Sourcetree拉取/提交代码转圈,90%以上都是SSH密钥未加载导致的,无需复杂排查,“工具→选项→保存”三步就能快速解决。如果频繁出现,配置好SSH密钥路径和代理自启,就能彻底摆脱这个困扰,专注于代码开发~