我正在开发一个在我的组织内使用的虚拟助手解决方案。我从GitHub克隆了Microsoft AI存储库。
AI repo定期更新我想要的新功能……
也许分叉的令人困惑的方面是术语“起源”。当一个repo被克隆时,它有一个默认的远程名为origin,指向你在GitHub上的fork,而不是它分叉的原始repo。要跟踪原始仓库,您需要添加另一个远程,通常命名为“上游:”
git remote add upstream git://github.com/user/repo.git
然后您的过程变得清晰:您从上游获取,并推/拉到原点。当所有设置完成后,'git remote -v`将显示如下内容:
`origin https://github.com/you_repo/AI.git (fetch) origin https://github.com/you_repo/AI.git (push) upstream https://github.com/Microsoft/AI.git (fetch) upstream https://github.com/Microsoft/AI.git (push)`
请参阅有关此主题和相关主题的其他更深入的答案: GitHub上的origin和upstream有什么区别? 和 “下游”和“上游”的定义
最简单的方法 是一个分叉 ,有时这不是你想要的。我在这种情况下做了什么:
使用自述文件创建我的仓库(在GitHub,GitLab等)
在本地克隆我的回购
添加一个遥控器到我想要代码的仓库(我通常称之为上游)
git remote add upstream git@github.com/whatever
从遥控器拉
git pull upstream master
推送到我的仓库
git push origin master