Github是否有办法将您的fork与克隆的repo同步?

时间:2015-03-17 05:19:04

标签: git github

Github是否提供了一种方法来同步Github仓库的fork与源仓库中的更改?

比如说我分叉一个仓库,并将master重命名为upstream,我希望与源仓库的更改保持同步,Github可以将我的upstream与{同步{1}}来源的回购定期?

2 个答案:

答案 0 :(得分:2)

不,github不提供它。相反,你可以在本地实现它。

首先,创建本地存储库,添加自己的远程并检索它。

git init
git remote add origin git@github.com:<username>/<repo>.git
git pull origin master

下一步,向存储库添加一个远程分支,指向您分叉的原始仓库。

git remote add --track master <repo-name> git://github.com/<username>/<source-repo>.git

请注意,master将是您要在forked repo中跟踪的分支。 <repo-name>取决于你。如果您想验证,只需运行git remote,您必须看到<repo-name>origin作为输出。

现在,您已准备好从原始仓库获得所有新更改。

git fetch <repo-name>

将创建一个名为<repo-name>/master的新分支,其中包含最新更改。

答案 1 :(得分:-1)

是的,你可以同步它 - 它被称为合并。您可以随时将分支与主分支合并,但如果存在任何冲突(不兼容),则必须手动修复它们。

例如,在源文件夹中,假设已经配置了Github:

git checkout upstream
git merge master

正如我已经提到的,如果您更改了分支机构中的某些内容并且主分支更改了相同的代码行 - 自动合并无法正常工作,则必须手动决定要保留的版本。