Git

如何在Git提交代码时自动补充分支名称 - 完全指南

silverwq
2023-05-06 / 0 评论 / 269 阅读 / 正在检测是否收录...

只需要将下面脚本适当的修改,保存名称为:commit-msg,然后放到.git\hooks目录下即可

#!/bin/sh

COMMIT_MSG_FILE=$1

COMMIT_MSG=$(cat $COMMIT_MSG_FILE)

# 获取分支名称
BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD)
# 分支名称的规则,例如:yyht-12323-修改文案,这里可以根据需要修改
TASK_ID_PATTERN="(yyht|ST)-[0-9]+"
TASK_ID=$(echo $BRANCH_NAME | grep -Eo "[^/]+/$TASK_ID_PATTERN" | grep -Eo "$TASK_ID_PATTERN")

# 若分支名不包含 task-id, 则不作修改
if [[ -z "$TASK_ID" ]]
then
  exit 0
fi

# 若提交信息已包含 task-id, 则不作修改
if [[ "$COMMIT_MSG" == *"$TASK_ID"* ]]
then
 exit 0
fi

echo -e "\n\nTB: $TASK_ID" >> $COMMIT_MSG_FILE
0

评论 (0)

取消