【Git】pull经常遇到这样的错误:error: Your local changes to the following files would be overwritten by merge:

这种情况下,如何保留本地的修改同时又把远程的合并过来呢?首先取决于你是否想要保存本地修改。(是 /否)


1    git stash  
2    git pull origin master  
3    git stash pop  
4    git stash的时候会把你本地快照,然后git pull 就不会阻止你了,pull完之后这时你的代码并没有保留你的修改。
这时候再执行git stash pop你去本地看会发现发生冲突的本地修改还在,这时候你该commit push就不会冲突了。



既然不想保留本地的修改,那好办。直接将本地的状态恢复到上一个commit id 。然后用远程的代码直接覆盖本地就好了。

git reset --hard 
git pull origin master

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当你在使用 SourceTree 操作 Git遇到 "Your local changes to the following files would be overwritten by merge" 的错误提示,这意味着你正在尝试合并的分支与当前分支存在冲突。为了解决这个问题,你可以采取以下步骤: 1. 首先,你需要查看哪些文件发生了冲突。SourceTree 会在界面上用红色标记出发生冲突的文件。你可以点击这些文件,查看具体的冲突内容。 2. 接下来,你需要决定如何处理这些冲突。有两种常见的方法: a. 保留当前分支的更改:如果你认为当前分支的更改是正确的,可以选择保留它们。在 SourceTree 中,右键点击发生冲突的文件,选择 "Reset File to Previous Version"(重置文件到之前的版本)。这将撤销你在当前分支上的更改,使文件回到合并前的状态。 b. 保留要合并的分支的更改:如果你认为要合并的分支的更改更合适,可以选择保留它们。在 SourceTree 中,右键点击发生冲突的文件,选择 "Use Theirs"(使用他们的版本)。这将将文件恢复到要合并的分支上的状态。 3. 解决完所有冲突后,你需要提交更改。在 SourceTree 中,点击 "Commit"(提交)按钮,填写提交信息,然后点击 "Commit & Push"(提交并推送)按钮。 4. 最后,确保你的本地仓库与远程仓库同步。在 SourceTree 中,点击 "Pull"(拉取)按钮,以获取远程仓库的最新更改。 通过以上步骤,你应该能够解决使用 SourceTree 操作 Git遇到的 "Your local changes to the following files would be overwritten by merge" 错误
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值