我有许多信息想添加到提交中。此信息适用于自动和手动流程。示例包括团队名称、状态(生成、开发、配置等)或票号。
有没有办法将此信息添加到提交中,或者我是否必须标记类似于TICKET-1234:<HASH>?
我有许多信息想添加到提交中。此信息适用于自动和手动流程。示例包括团队名称、状态(生成、开发、配置等)或票号。
有没有办法将此信息添加到提交中,或者我是否必须标记类似于TICKET-1234:<HASH>?
有许多可用选项:
如果你想要的只是一个简短、好记的提交名称,你可以简单地使用git tag. 标记对象指向一个提交并包含一条附加消息,并且它本身由一个前缀为 的 ref 命名refs/tags/。默认情况下,fetchandpush操作不会将标签与远程存储库同步,除非您通过--tags.
如果您需要在提交创建时存储信息,您可以将其包含在提交消息底部的类似 RFC822 的标头中:
Fixes: ticket #1234
该git commit命令甚至提供了一个内置--signoff选项,可以自动添加一个这样的标题。
如果您需要存储随时间变化的较长形式的信息,请查看git notes:
添加、删除或读取附加到对象的注释,而无需接触对象本身。
默认情况下,注释会保存到 并从中读取
refs/notes/commits,但可以覆盖此默认值。请参阅下面的选项、配置和环境部分。如果此 ref 不存在,它将在第一次需要存储便笺时悄悄创建。注释的典型用途是在不更改提交本身的情况下补充提交消息。注释可以通过 git log 与原始提交消息一起显示。为了将这些注释与存储在提交对象中的消息区分开来,注释像消息一样缩进,在一个未缩进的行之后显示“Notes (<refname>):”(或“Notes:” for
refs/notes/commits)。
和标签一样,默认情况下,带有refs/notes/前缀的 refs 不会被fetchandpush操作同步。您必须另外配置 git 来跟踪它们。