从分支名称中解析票证编号,并在Windows上的TortoiseGit中将其显示为默认提交消息

时间:2017-02-07 15:24:43

标签: windows tortoisegit commit-message

我的功能分支称为feature/x_somename,其中x是故障单编号。每次我开始新的提交时,都会发生以下情况:

  1. 从分支名称中解析票号。
  2. refs #x:放入提交消息中(其中x是票号)。
  3. 使用准备好的提交消息显示提交对话框
  4. 我该怎么做?

1 个答案:

答案 0 :(得分:0)

可以使用TortoiseGit hooks完成(不要与git hooks混淆):

  1. 使用以下行创建批处理文件(只需复制和粘贴):

    :: try to parse ticket number from branchname (expected format: "sometext/ticketnumber_sometext")
    for /f "tokens=2 delims=/_" %%i in ('git rev-parse --abbrev-ref HEAD') do set c=%%i
    :: print "refs #ticketnumber: "
    if defined c echo refs #%c%: >> %2`
    
  2. 在TortoiseGit设置中,转到Hook Scripts

  3. Add
  4. 检查Enabled
  5. 选择此挂钩应适用的路径(所有路径均为*
  6. 将批处理脚本的路径放在Command Line To Execute框中。
  7. Ok并关闭设置。
  8. 关闭并重新打开所有其他TortoiseGit窗口以确保设置挂钩。
  9. 批处理文件有什么作用?
    git rev-parse --abbrev-ref HEAD返回branchname for命令将结果按/_拆分 然后它将采用此分割的第二部分并将其保存在%% i中 然后它将%% i保存到变量c。
    if只检查是否定义了c,如果是,则打印结果。