所以我在 github 上克隆了一个项目并修复了一个补丁。因为这是我第一次在 git 中工作,所以我试图找出将它放到网上的最佳方法。
在 github 上查看我自己的(克隆的)存储库后,只有一个分支:master。我创建了一个分支,myfix,它现在包含一个提交,这是该错误的修复。
- 我现在应该将所有内容推送到 github 上的克隆项目吗?我假设这会在我的 github 项目上创建包含该单个修复提交的分支myfix 。
- 我应该将myfix合并到master分支中,删除myfix然后推送所有内容吗?
在线搜索时,似乎常见/良好的做法是保持master不变,纯粹用于从真实/原始公共项目存储库中提取(即其他人接受的贡献等)。但其他人提出了其他策略:
- 创建一个上游分支,将您干净且准备好的贡献放在那里,以便其他人可以轻松找到它们,而不是将其与我的其他不完整/实验性分支混为一谈(我想知道如果它们如此不完整,为什么它们甚至会在线)。
- 创建下游分支,将其他更改拉入此处以进行离线合并。
如果我遵循上述两个(虽然目前感觉有点矫枉过正),主分支的用途是什么?
Git 可以做上述的任何组合(或全部)。这让我对如何轻松向他人展示我的作品感到有些困惑。有这样的“通用”工作流程吗?还是每个人都为自己而在问题跟踪器中的特定分支(已推送)中发布特定修订以修复错误?