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

如何在不创建Fork的情况下更新本地克隆的Git仓库

如何同步原GitHub仓库变更且保留本地修改?

当然可行!这是Git日常使用里特别常见的场景,完全不用担心会覆盖你本地的实验性修改。下面一步步给你讲具体操作:

  • 第一步:拉取原仓库的最新变更(不会影响本地代码)
    首先确认原仓库的远程别名,克隆下来默认是origin,你可以用以下命令查看:

    git remote -v
    

    确认后,运行fetch命令把原仓库的所有最新内容下载到本地,这个操作只会把代码存到本地Git的后台,不会动你当前工作区的文件:

    git fetch origin
    
  • 第二步:合并原仓库变更到本地分支
    假设你当前在本地的main分支(对应原仓库的默认分支),运行合并命令:

    git merge origin/main
    

    如果没有冲突,Git会自动完成合并,你的本地修改就和原仓库的最新代码结合好了。

    如果遇到冲突,Git会明确告诉你哪些文件有冲突。打开这些文件,你会看到类似这样的冲突标记:

    <<<<<<< HEAD
    你的本地修改内容
    =======
    原仓库的最新变更内容
    >>>>>>> origin/main
    

    手动编辑这些文件,保留你需要的内容,删掉冲突标记。编辑完成后,用以下命令标记冲突已解决:

    git add <冲突文件名>
    

    最后完成合并:

    git merge --continue
    
  • 可选:用Rebase让提交历史更整洁
    如果你喜欢线性的提交历史,可以用rebase代替merge:

    git rebase origin/main
    

    遇到冲突的处理方式和merge类似:解决冲突后用git add <冲突文件名>,然后运行git rebase --continue完成操作。注意:rebase会修改提交历史,只适合在本地分支使用,不要对已经推送到公共仓库的分支用这个命令。

  • 小技巧:提前暂存本地修改(可选)
    如果你有很多未暂存的修改,担心合并时出问题,可以先把本地修改临时存起来:

    git stash
    

    同步完原仓库后,再恢复你的本地修改:

    git stash pop
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 19:28:05