我在Github上分叉了一个存储库。现在,原来有一些更新。如何从原始存储库中提取更改并与它们保持同步?
如果我的来源与原始来源发生冲突,我是否有机会手动编辑它?
EDIT1:谢谢大家的帮助。我想我需要RTFM:)
答案 0 :(得分:9)
在另外两个答案中没有明确说明的是你不能直接从github上的原始项目合并到github上的fork,你需要通过你自己机器上的本地克隆。
因此,您将原始项目设置为远程(在Magnus Skog和CJlano的答案中称为upstream
),然后从该远程拉入您的本地克隆,解决与您的本地更改的任何合并冲突,然后推送结果你的叉子在github上。
答案 1 :(得分:6)
请参阅:https://help.github.com/articles/fork-a-repo
吸引上游变更
如果您分配项目的原始仓库得到更新,那么 可以通过运行以下代码将这些更新添加到您的fork:
git fetch upstream # Fetches any new changes from the original repo git merge upstream/master # Merges any changes fetched into your working files
答案 2 :(得分:4)
只需将原始存储库添加为远程存储库并从中提取更改
git remote add upstream path/to/upstream/repo.git
git pull upstream master
答案 3 :(得分:1)
请参阅关于“同步叉子”的github文档
https://help.github.com/articles/syncing-a-fork
Ps:同步fork只会更新存储库的本地副本;它不会在GitHub上更新您的存储库。
Ps 2:每一步的实际代码都是在开头粘贴的链接。