git develop和develop有什么区别特征分支类型?

w1jd8yoj  于 2023-09-29  发布在  Git
关注(0)|答案(3)|浏览(156)

我读了一些关于Git flow最佳实践的文章。Git分支有很多类型(例如:[1]、[2]):

+ Master
+ Develop
+ Feature
+ Bug
+ Proof of concept
+ Release
+ Hotfix

MasterMaster有什么区别?Release
类型Feature与类型Feature之间的区别是什么?Develop
[1][http://nvie.com/posts/a-successful-git-branching-model/](http://nvie.com/posts/a-successful-git-branching-model/)
[2]http://developer.exoplatform.org/#id-branching-model

1yjd4xko

1yjd4xko1#

对于git工作流,如[1]中所示:

*feature:所有特性/新功能/主要重构都在feature分支中完成,这些分支会分支并合并回develop分支(通常在某种同行评审之后)。
*release:当积累了足够的特性或者下一个发布时间框架接近时,新的release分支从develop分支出来。它仅用于测试/错误修复和任何必要的清理(例如改变一些路径名、用于检测的不同默认值等)。
***master**一旦QA对质量感到满意,release分支将合并到master(也合并回develop)。这就是客户交付/使用的内容。
***hotfix**如果在发布后发现重大问题,则在hotfix分支中开发修复程序,该分支从master分支出来。这些是 * 唯一的分支 *,将永远分支的主人。

  • 注意:master中的任何提交都是合并提交(来自releasehotfix分支),代表交付给客户的新版本。

请注意,此模型主要适用于a)遵循b)经典发布版本控制的大型软件项目,以及c)具有单独的QA团队。GitHub上许多流行的存储库都遵循一个更简单的模型。

nx7onnlm

nx7onnlm2#

masterrelease之间的区别在于master分支是您的客户/用户正在使用的分支。它是实际安装或销售的分支。
在许多团队中,master分支(通常也称为main)也是release分支。但情况并非总是如此。在较大的公司或有独立的测试或QA部门/团队的公司中,主分支是被销售给客户的分支,而发布分支是被测试的分支。请注意,对于一些项目来说,运行一个完整的测试可能需要一周或更长时间,因此有一个测试人员可以测试但稳定的分支是有意义的(开发人员不会经常推送更新)。
featuredevelop之间的差异来自相同的推理。develop分支(通常称为developdev)是稳定开发人员的分支。在传统的源代码控制软件中,开发分支是你的仓库服务器。这是所有开发人员共有的分支。它是您开始开发的分支。
另一方面,特性分支是您自己的个人分支。在开发一个特性/故事/模块的过程中,你当然会修改很多代码。为了利用git,你应该尽早提交并经常提交。但是您正在处理的代码根据定义是不稳定的(未完成),并且可能会对其他开发人员造成破坏性的更改。所以你在自己的分支上开发(从develop分支出来),直到你的代码准备好被合并回develop。

bis0qfac

bis0qfac3#

只是因为还没有人在一个明确的声明中说出来,这将回答我的问题...
MasterMaster有什么区别?Release?
类型Feature与类型Feature之间的区别是什么?Develop

没有区别

分支名称是 * 团队建立的约定 *,而不是 * git强制执行的规则 *。
Git不关心你给分支取什么名字,你创建了多少子分支,什么时候合并它们,等等。等等,等等,到Git...分支就是分支
在许多团队中,分支的名称遵循一个定义的约定,只是为了便于共享理解。但正如我们经常看到的,你的惯例对技术并不重要。它需要一个人来给予一个概念 * 意义 *,所以请随意以任何你觉得有意义的方式命名你的分支。

相关问题