Git分支的命名规则

653 阅读3分钟

我们在DeepSource使用git分支来组织正在进行的工作,以确保软件交付保持有效。如果你今天使用git,你很有可能在使用著名的git-flow或最近的GitHub flow。这两种工作流程都广泛地依赖于有效地使用分支--而命名一个新的分支是许多开发者所苦恼的事情。

Branch Naming Example

一个一致的分支命名惯例是代码审查最佳实践的一部分,除了使用静态分析工具外,还可以使合作和审查你的代码的人的生活变得更加容易。

有很多公约和格式被推荐,但有时遵循这些公约本身就会变得很痛苦。在此,我们概述了一个简单的git分支命名惯例,它易于遵循,并照顾到大多数常见的使用情况。

1.在分支名中使用问题跟踪器ID

大多数惯例都建议在分支名称前加上前缀,如hotfix-,feature-,chore-, 或其他一些任务分类的变体。实际上,如果你使用的是问题追踪器,无论如何你都会在问题追踪器中标记任务的类别--此外还有更多额外的背景。使用这些分类前缀,至少看起来是多余的,最糟糕的是在命名分支时需要额外的决策。用问题跟踪器的ID来引导是很方便的,需要最少的思考,而且有更多的优势。

  • 在问题追踪器中创建的问题,在大多数情况下,是用来追踪团队的进展的。将相关的工作分支与每个任务关联起来变得很容易--特别是当每个开发人员同时在处理许多问题时。

  • 在问题跟踪器中,搜索和过滤要容易得多。一旦你知道了你的问题编号,使用本地git树中的自动完成功能找到该分支就变得很容易。

➜ super-secret-project git:(master) git checkout 72
722-add-billing-module  -- Apply suggestions from code review
720-submodules-rc       722-add-billing-module  723-fix-highlighting    728-fix-homepage-css

2.添加任务的简短描述符

虽然在大多数情况下,使用问题跟踪器ID本身就足以识别一个项目中的唯一分支,但也有可能需要一些更细微的差别。例如,一个问题可能需要多个分支,可能由不同的人完成。

在问题ID后面使用简短的、可操作的任务描述。这使得分支的名称可以被识别,与众不同,并且在你没有问题编号的情况下容易搜索到。确保描述词简明扼要,但又有足够的描述性,让你知道该分支发生了什么。

3.使用连字符作为分隔符

这有点见仁见智,但连字符是分支名称中很好的分隔符。你也可以使用下划线,_ 。但关键是要保持一致。


就是这样--只有这三条规则要牢记。没有复杂的命名方案或规则可循,使团队中的每个人都能轻松地保持一致。命名事物有时会很困难,有简单的启发式方法很有帮助。在一个几乎每个人都在使用某种问题跟踪的世界里,这种方法使git分支的命名尽可能地简单。