使用one-man git项目的分支是否明智?

Kar*_*lek 16 git

我在git上有一个小项目,我是唯一的开发人员.就目前而言,我只使用了一个主分支来实际运行.

现在该项目以某种方式工作,我想实现一些新功能.问题是,我应该为每个新功能创建新分支并在之后将其合并吗?

事实上,我的工作流程只是改进了"功能分支",并且大部分时间都将其合并到未更改的"主分支"中,因此创建新分支是否有意义?

Tim*_*gan 19

从gitworkflows手册页:

任何重要的功能都需要实现几个补丁,并且可能在其生命周期内获得额外的错误修正或改进.

直接在集成分支上提交所有内容会导致许多问题:糟糕的提交无法撤消,因此必须逐个还原,这会在您忘记还原一组更改时创建令人困惑的历史记录和进一步的错误可能性.并行工作混合了变化,造成了进一步的混乱.

使用"主题分支"解决了这些问题.

即使您是唯一的开发人员,也应该使用主题分支(也称为功能分支).

除了上面提到的原因,我还会补充:

  • 如果您的功能需要很长时间才能完成,那么使用功能分支可以轻松暂停该功能的工作以处理其他功能.
  • 如果您有可能需要支持多个版本的代码(即您当前的版本是v2.0,但客户/用户使用的是v1.0,那么使用主题分支可以让您轻松地将错误修复合并到多个版本中.


Ben*_*Ben 8

我应该为每个新功能创建新分支并在之后将其合并吗?

是的,因为在实现该功能的过程中,您会在生产代码中找到一个停止显示的错误,您会感谢您可以git checkout master回到生产中的代码并进行修复.我的规则是始终让我的主分支处于可部署状态.