未修改代码时git pull提示需配置rebase策略,如何正确拉取最新代码?
解决方法
因为你本地完全没有修改任何代码,不存在分支分歧或冲突风险,选择快进拉取是最适配你场景、零风险的方案:
单次拉取解决
直接执行命令即可拉取最新代码,不会产生任何额外提交、也不会修改你本地任何已有内容:
git pull --ff-only
这个命令的逻辑是:只有当你的本地分支完全落后于远程分支、可以直接快进更新时才会执行拉取,不符合条件会直接终止,完全不会有操作风险。
永久关闭提示(可选)
如果你希望后续在这个项目执行git pull时不再弹出该提示,直接执行一次配置命令即可:
git config pull.ff only
如果希望本地所有Git项目都默认用这个安全策略,把命令改为全局配置即可:
git config --global pull.ff only
说明
- 执行拉取前可以先执行
git status,只要输出为nothing to commit, working tree clean,就证明本地没有任何未提交的修改,所有拉取操作都不会破坏你的本地文件 - 即使误执行了
git pull --no-rebase也不会有问题:在你本地无修改的场景下,该命令同样会自动走快进逻辑完成更新,和--ff-only的执行结果完全一致 rebase操作仅在本地有未提交的独有提交时才需要处理冲突,你本地没有任何修改的情况下,就算开启rebase参数也不会产生任何异常
内容的提问来源于stack exchange,提问作者Bruce Mathers
相关产品推荐
相关产品推荐

