0

我的功能分支被称为票号feature/x_somename在哪里。x每次我开始一个新的提交时,都会发生以下情况:

  1. 从分行名称解析票号。
  2. 输入refs #x:提交消息(其中 x 是票号)。
  3. 显示带有准备好的提交消息的提交对话框

我怎样才能做到这一点?

4

1 回答 1

0

可以使用TortoiseGit 钩子来完成(不要与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 窗口以确保已设置挂钩。

批处理文件有什么作用?
git rev-parse --abbrev-ref HEAD返回分支名称。
该命令用和for分割结果。 然后它将获取此拆分的第二部分并将其保存在 %%i 中。 然后它将 %%i 保存到变量 c 中。 只是检查 c 是否已定义,如果是则打印结果。/_


if

于 2017-02-07T15:24:42.913 回答