如何解决GitHub 中的分叉与分支
你不能总是创建一个分支或拉一个现有的分支并推回它,因为你没有注册为那个特定项目的合作者。
分叉只不过 的克隆:
您可以通过以下方式使 fork 与原始项目保持同步:
rebase 允许您确保您的更改是简单的(无需处理合并冲突),当您希望原始项目的维护者将您的补丁包含在他的项目中时,使您的拉取请求更加容易。
目标实际上是允许协作,即使 直接 参与并不总是可能的。
您在 GitHub 端克隆的事实意味着您现在有 两个 “中央”存储库(“中央”作为“对多个协作者可见)。 如果您可以将它们直接添加为 一个 项目的协作者,则无需管理另一个项目一个用叉子。
合并体验将大致相同,但具有额外的间接级别(首先推动分叉,然后要求拉动,原始回购的演变风险使您的快进合并不再快进) .
这意味着正确的工作流程是git pull --rebase upstream
(将您的工作重新建立在来自上游的新提交之上),然后git push
--force origin
,为了以这样一种方式重写历史记录,您自己的提交总是在来自原始(上游)回购的提交之上.
解决方法
我想更多地了解分叉 github 项目与创建 github 项目分支的优缺点。
分叉使我的项目版本与原始版本更加隔离,因为我不必在原始项目的合作者列表中。由于我们正在内部开发一个项目,因此添加人员作为协作者没有问题。但是,我们想了解分叉项目是否会使合并更改回主项目变得更加困难。也就是说,我想知道分支是否让两个项目更容易保持同步。换句话说,当我分支时,在我的主项目版本和主项目之间合并和推送更改是否更容易?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。