首页 > 解决方案 > git 分支更改历史

问题描述

我想在 git 中保留新功能的历史。

这个想法是仅通过合并请求修改主分支,并且每个分支都有功能的名称。

这个可以吗?还是每个提交都应该引用该功能?

我的问题出现了,因为多个分支可以在同一个文件上工作,并且在混合 master 时,提交可以根据我的理解混合。另一方面,您也可以删除分支。那么,合并 master 中的 feature_ 分支并删除它们后,我怎么知道哪个提交(更改)对应于哪个功能?

换句话说,如果我在分支中携带特征,我如何查看添加删除分支的特征的历史记录?如果两个分支的提交在主服务器上合并。我如何知道每个提交属于哪个分支?

标签: gitbranchworkflow

解决方案


我如何知道每个提交属于哪个分支?

这个问题没有答案,因为在 git 中(与其他一些版本控制系统不同)单个提交不“属于”一个分支。git 中的分支基本上是临时的和可移动的提交指针,在开发时用于跟踪不同的工作流,将它们合并在一起等。

git 中的历史完全由提交本身组成。这包括提交消息,这就是为什么编写好的提交消息如此重要。让我们重新表述你的问题:

我如何知道每个提交是作为哪个功能的一部分创建的?

请注意,这是一个略有不同的问题:您不再询问如何创建提交的机制,而是询问创建提交的原因。这是一个好的提交信息可以通过两种方式告诉你的:

  • 编写良好的提交消息将解释更改的原因,而无需大量外部上下文。
  • 提交消息的标准化格式可以帮助您查看日志中的提交组,例如通过在每条消息的开头包含项目名称或任务编号。

推荐阅读