Github是否提供了一种方法来同步Github仓库的fork与源仓库中的更改?
比如说我分叉一个仓库,并将master
重命名为upstream
,我希望与源仓库的更改保持同步,Github可以将我的upstream
与{同步{1}}来源的回购定期?
答案 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
正如我已经提到的,如果您更改了分支机构中的某些内容并且主分支更改了相同的代码行 - 自动合并无法正常工作,则必须手动决定要保留的版本。