Git别名解析消息

时间:2017-09-28 14:14:02

标签: bash sh git-shell

我正在尝试为添加更改创建别名,并在之后提交。提交消息必须以分支名称为前缀。该消息应如下所示:

“[BRANCH-123]在此留言”

我的分支以“bugfix /”或“feature /”之类的子树为前缀,我想要从邮件中删除这些子树。到目前为止,我有:

branch-name = "!git rev-parse --abbrev-ref HEAD"

something = "!f() { git add -A && git commit -m \"[${$(git branch-name)#*/}] $1\"; }; f"

然而,'something'命令显示'Bad substitution'。

1 个答案:

答案 0 :(得分:0)

参数替换采用变量名来操作,而不是值。

因此,您无法运行:

echo "${$(somecommand)##*/}"

相反,你需要运行:

var=$(somecommand)
echo "${var##*/}"

因此:

something = "!f() { local branch; branch=$(git branch-name); git add -A && git commit -m \"[${branch#*/}] $1\"; }; f"