Git协作:本地修改与远程更新脚本的安全合并方法咨询
Git协作场景下的安全推送流程
当你和同事修改同一脚本,本地有修改、远程也有更新时,按以下步骤操作绝对不会丢代码或覆盖他人修改:
暂存本地修改:先把还没提交的本地改动临时存起来,确保工作区干净,避免拉取时出问题:
git stash要是之后想查看暂存的内容,用
git stash list就行;如果想保留暂存记录(而不是直接恢复后删除),后面可以用git stash apply代替pop。拉取远程最新代码:拉取同事已经推送到仓库的修改,确保本地代码是最新版本:
git pull origin <你的分支名> # 比如主分支就是 git pull origin main恢复本地修改并处理冲突:把刚才暂存的本地改动恢复到工作区:
git stash pop这时候如果Git提示有冲突,打开冲突文件,找到标记冲突的代码段:
<<<<<<< HEAD 你本地的修改内容 ======= 同事远程的修改内容 >>>>>>> [远程提交哈希]手动整理代码,保留需要的部分,删除这些冲突标记,确保脚本逻辑正常。
提交合并后的修改:解决冲突后,把修改的文件加入暂存区,然后提交:
git add <冲突的文件名> git commit -m "合并远程修改,解决脚本xxx部分的冲突"推送最终修改:现在本地代码已经是合并了远程最新版本的状态,直接推送就不会报错或覆盖他人修改:
git push origin <你的分支名>
补充说明
如果你的本地修改已经执行过git commit提交,那可以跳过git stash步骤,直接执行git pull,Git会自动尝试合并,有冲突的话按上面的方法解决就行。
内容的提问来源于stack exchange,提问作者João Machado
相关产品推荐
相关产品推荐

