You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio Code中GitLens无法执行pull、push操作如何解决?

错误根因

该报错与GitLens、VS Code本身的安装状态无关,核心原因是GitLens执行拉取操作时默认使用--ff-only(仅快进)的拉取策略:当远程分支存在本地未同步的提交、或本地与远程分支出现提交分叉时,快进合并无法完成就会抛出该错误。你本地终端可以正常提交推送,是因为终端调用Git时继承了你本地配置的全局拉取策略,和GitLens默认的强制快进策略不一致。

解决方法

方法一:修改全局Git拉取策略(一劳永逸)

根据你的使用习惯二选一执行终端命令即可:

  • 习惯合并模式保留分叉提交记录:git config --global pull.merge true
  • 习惯变基模式保持提交线干净:git config --global pull.rebase true
    配置完成后GitLens会自动继承全局配置,不再强制仅快进拉取。

方法二:仅修改VS Code侧拉取配置

如果不想修改全局Git配置,可直接调整VS Code设置:

  1. 打开VS Code设置(M1版VS Code快捷键为Cmd+,)
  2. 搜索Git: Pull Arguments配置项
  3. 删除该项中默认的--ff-only参数,也可根据需求添加--rebase或--merge参数
  4. 保存设置后重启GitLens即可生效

方法三:单次临时解决

如果仅本次遇到问题,不需要修改配置,可直接在VS Code内置终端执行一次:git pull --rebase origin main 或 git pull --merge origin main,完成分支同步后再用GitLens操作就不会报错。

内容的提问来源于stack exchange,提问作者Dennis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 05:36:08