【Git系列】如何同步原始仓库的更新到你的fork仓库?

发布于:2025-06-11 ⋅ 阅读:(26) ⋅ 点赞:(0)

🎉🎉🎉欢迎来到我们的博客!无论您是第一次访问,还是我们的老朋友,我们都由衷地感谢您的到来。无论您是来寻找灵感、获取知识,还是单纯地享受阅读的乐趣,我们都希望您能在这里找到属于自己的收获,也欢迎评论和留言,分享您的想法和见解。

你的每一次阅读,都是我在键盘上敲下这些文字的勇气 (๑•̀ㅂ•́)و✧。
✨️✨️欢迎订阅本专栏✨️✨️

前言

当你 fork 其他开发者的 GitHub 仓库后,你在自己的账户下创建了该仓库的一个副本。然而,fork 后的仓库不会自动与原始仓库(也称为上游仓库)同步。如果原始仓库的开发者更新了代码,这些更新不会自动反映在你 fork 的仓库中。

如何同步原始仓库的更新到你的fork仓库?

要保持你的 fork 仓库与原始仓库同步,你需要手动执行以下步骤:

1. 打开终端或命令提示符

首先,打开你的终端(macOS/Linux)或命令提示符(Windows),然后导航到你的本地 fork 仓库的目录。例如:

cd /path/to/your/forked/repository
2. 添加上游仓库(如果尚未添加)

上游仓库是指你最初 fork 的原始仓库。你需要将其添加为一个新的远程仓库,通常命名为 upstream

git remote add upstream https://github.com/原始开发者用户名/原始仓库名.git

你可以通过以下命令验证远程仓库是否添加成功:

git remote -v

你应该能看到 origin(指向你的 fork)和 upstream(指向原始仓库)的 URL。

3. 获取上游仓库的更新

使用 git fetch 命令从上游仓库获取最新的更改:

git fetch upstream
4. 切换到主分支

确保你的本地仓库在主分支上(通常是 mainmaster):

git checkout main

需要将 main 替换为你的主分支名称

5. 合并上游更改到你的主分支

有两种主要方法可以将上游更改合并到你的主分支:mergerebase

方法一:使用 git merge
git merge upstream/main

需要将 main 替换为上游仓库的主分支名称

这将把上游仓库的更改合并到你的本地主分支。如果有冲突,Git 会提示你解决冲突。

方法二:使用 git rebase
git rebase upstream/main

rebase 会将你的本地提交“移到”上游更改的顶部,使历史记录更加线性。同样,如果有冲突,Git 会提示你解决冲突。

6. 推送更新到你的 GitHub fork 仓库

完成合并或变基后,将更新推送到你的 GitHub fork 仓库:

git push origin main

需要将 main 替换为你的 fork 仓库主分支名称

总结

fork 后的仓库不会自动与原始仓库同步。要保持同步,你需要手动添加上游仓库作为远程仓库,获取其更新,并将其合并到你的本地分支,然后推送到 GitHub。通过这些步骤,可以确保你的 fork 仓库始终包含原始仓库的最新更改。


网站公告

今日签到

点亮在社区的每一天
去签到