使用 GitHub 向项目添加新功能的最佳方式

Best way to add new features to a project with GitHub

我最近启动了我的第一个 GitHub 开源项目。现在我想在与 master 合并之前在 beta 分支中为这个项目添加一些新功能。

但是最有效的方法是什么?

一个。将所有新功能直接提交到 beta 分支然后创建拉取请求以将 beta 分支与主分支合并是否更好。

乙。或者我应该为每个单独的功能创建一个分支并创建一个拉取请求以将它们与 beta 分支合并?

A: 
commit →↓ 
commit → beta → master
commit →↑
B: 
commit → feature1 →↓
commit → feature2 → beta → master
commit → feature3 →↑

在我的工作中,我们更喜欢按功能分支。这与效率无关,而是与协作有关 - 当我审查同事的工作时,更容易检查较小的分支和拉取请求。

此外,更好的粒度 - 您知道在分支 X 上您具有功能 X,并且您可以轻松管理此类分支。

当一个人工作时,我不会为这种粒度而烦恼——一旦我完成了一批事情,我就会合并。所以我创建了寿命更长的分支,一旦完成,我就合并它——我不会在代码审查中审查我的更改,所以这个工作流程更适合我。