Skip to content

Latest commit

 

History

History
61 lines (42 loc) · 1.79 KB

Syncing a fork.md

File metadata and controls

61 lines (42 loc) · 1.79 KB

Syncing a fork 同步一个 fork

同步 fork, 使与上游仓库保持一致。

提示:在您同步你的 fork 和上游仓库时,您必须[配置远程指向 Git 的上游仓库](Configuring a remote for a fork.md)。

  1. 打开终端(Mac)或者命令提示符 (Windows 或者 Linux)
  2. 修改当前工作目录到你本地项目
  3. 获取分支和他们来自上游库的各自的提交。提交到 master 将会存储到本地的分支 upstream/master
	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://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
	#  * [new branch]      master     -> upstream/master
  1. 检出你 fork 的本地master分支
	git checkout master
	# Switched to branch 'master'
  1. 合并 upstream/maste的变化到你本地 master分支。这样你 fork 的 master会和上游仓库同步,而不会丢失你本地的变化。
	git merge upstream/master
	# 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 将会提示 "fast-forward":

	git merge upstream/master
	# Updating 34e91da..16c56ad
	# Fast-forward
	#  README.md                 |    5 +++--
	#  1 file changed, 3 insertions(+), 2 deletions(-)

提示:同步你的 fork 仅更新你库的本地副本。更新在 GitHub 上 fork,你必须 [push 你的变化](Pushing to a remote.md)。

参考https://help.github.com/articles/syncing-a-fork/