当你在 Git 中 fork 了一个项目并修改了代码,如果上游库(原始仓库)有了更新,你希望同步这些更新并保留自己的修改,下面是常用的操作步骤:
. 添加上游仓库作为远程仓库
首先,确保你已经添加了上游仓库(原始仓库)作为远程仓库,便于拉取更新:
git remote add upstream <上游仓库的URL>
你可以使用以下命令确认是否成功添加上游远程仓库:
git remote -v
- 拉取上游仓库的最新更改
从上游仓库拉取最新的更改:
git fetch upstream
- 合并上游更新到本地分支
将上游仓库的更新合并到你本地的分支中。假设你在 main 分支上工作,执行以下命令:
git checkout main
git merge upstream/main
如果没有冲突,Git 会自动将更新合并到你的代码中。
如果有冲突,Git 会提示你手动解决冲突。你需要根据具体情况手动修改冲突的文件,解决后使用 git add <文件名> 标记解决完成,再执行 git commit 完成合并。
- 保留你的修改并推送到自己的远程仓库
合并完成后,如果没有问题,你可以将本地的分支推送到你 fork 的仓库:
git push origin main
这样你既能同步上游仓库的最新更新,也能保留你自己对代码的修改。