0
点赞
收藏
分享

微信扫一扫

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

前言

当你 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 仓库始终包含原始仓库的最新更改。

举报

相关推荐

0 条评论