从 Web UI 同步分叉分支
-
在上 GitHub,导航到要与上游存储库同步的分支存储库的主页。
-
在文件列表上方,选择“Sync fork”下拉菜单。

-
查看有关上游存储库提交的详细信息,然后点击“更新分支”按钮。
如果来自上游存储库的更改导致冲突, GitHub 将提示你创建拉取请求以解决冲突。
将分叉分支与 GitHub CLI
GitHub CLI 是用于从计算机的命令行使用 GitHub 的开源工具。 从命令行操作时,您可以使用 GitHub CLI 来节省时间并避免切换上下文。 若要了解详细信息 GitHub CLI,请参阅 关于 GitHub CLI。
要从其父库更新远程派生库,请使用 gh repo sync -b BRANCH-NAME 子命令并提供派生库和分支名作为参数。
gh repo sync owner/cli-fork -b BRANCH-NAME
如果来自上游存储库的更改导致冲突, GitHub CLI 则无法同步。若要覆盖目标分支,请使用 --force 标志。
从命令行同步分叉分支
必须先在 Git 中配置指向上游存储库的远程库,然后才能将分支与上游存储库同步。 请参阅“为分支配置远程存储库”。
-
打开终端或 Git Bash。
-
将当前工作目录更改为您的本地项目目录。
-
从上游仓库获取各个分支及其对应的提交。 对
BRANCH-NAME的提交将保存在本地分支upstream/BRANCH-NAME中。$ git fetch upstream > remote: Counting objects: 75, done. > remote: Compressing objects: 100% (53/53), done. > remote: Total 62 (delta 27), reused 44 (delta 9) > Unpacking objects: 100% (62/62), done. > From https://HOSTNAME/ORIGINAL-OWNER/ORIGINAL-REPOSITORY > * [new branch] main -> upstream/main -
查看分支的本地默认分支。 在本例中,我们使用
main。$ git checkout main > Switched to branch 'main' -
将上游默认分支中的更改合并到本地默认分支。 在此示例中,上游默认分支为
upstream/main。 这会将分支的默认分支与上游存储库同步,而不会丢失本地更改。$ git merge upstream/main > Updating a422352..5fdff0f > Fast-forward > README | 9 ------- > README.md | 7 ++++++ > 2 files changed, 7 insertions(+), 9 deletions(-) > delete mode 100644 README > create mode 100644 README.md如果本地分支没有任何唯一提交,Git 将执行快速转发。 请参阅 Git 文档中 的基本分支和合并 。
$ git merge upstream/main > Updating 34e91da..16c56ad > Fast-forward > README.md | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-)如果您的本地分支有独有提交,您可能需要解决冲突。 请参阅“合并、关闭拉取请求”。
提示
同步您的 fork 只会更新存储库的本地副本。 若要更新分支 你的 GitHub Enterprise Server 实例,必须 推送更改。