我尝试编写一个shell脚本(bash)。
脚本的目的是
- 获取上一次git commit的消息
- 在最后一个git commit消息的[]-括号内抓取任何内容
- 将该内容导出到名为GIT_COMMIT_MESSAGE_CONTEXT的环境变量中
示例:
最后一个git commit消息=“ [阶段]-gitlab试用”
工作示例:导出的环境变量应为
echo $GIT_COMMIT_MESSAGE_CONTEXT
Stage
我发现了以下内容,以获取上一次git commit的消息:
echo $(git log -1 --pretty=%B)
[Stage] - gitlab trial
我是bash脚本的新手,因此到目前为止,我的试用(见下文)有些欠佳。 也许有人有更多经验可以在这里提供帮助。
我的bash脚本(my-bash-script.sh)如下所示:
#!/usr/bin/bash
# get last git commit Message
last_git_commit_message="$(git log -1 --pretty=%B)"
export LAST_GIT_COMMIT_MESSAGE="$last_git_commit_message"
我在终端中运行bash脚本,如下所示:
bash my-bash-script.sh
关闭/重新打开终端后,我输入:
echo $LAST_GIT_COMMIT_MESSAGE
很遗憾,没有任何结果。
这是我的问题:
- 为什么运行bash脚本后我没有得到任何环境变量的回声?
- 如何扣除最后一个git commit消息的[] -parenthis内容?
- 如何重写我的脚本?