在 git 中创建 tag/branch 时触发 bash 脚本
Trigger bash script when creating tag/branch in git
我想按如下方式进行自动部署:
- 在每次推送代码时部署到 QC 环境
- 仅在创建新标签时部署到生产环境
你能帮忙吗?
已解决
在 githook post-receive
中编写如下脚本:
process_ref() {
oldrev=$(git rev-parse )
newrev=$(git rev-parse )
refname=""
arr=(${refname//// })
name="${arr[2]}"
case "$refname" in
refs/tags/*)
if expr "$oldrev" : '00*$' >/dev/null
then
echo "tag name $name"
sh trigger-script-on-creating-tag.sh
fi
;;
refs/heads/*)
echo "branch name $name"
sh trigger-on-creating-branch-or-pushed-code.sh
;;
*)
echo "other"
exit 1
esac
}
while read REF; do process_ref $REF; done
我想按如下方式进行自动部署:
- 在每次推送代码时部署到 QC 环境
- 仅在创建新标签时部署到生产环境
你能帮忙吗?
已解决
在 githook post-receive
中编写如下脚本:
process_ref() {
oldrev=$(git rev-parse )
newrev=$(git rev-parse )
refname=""
arr=(${refname//// })
name="${arr[2]}"
case "$refname" in
refs/tags/*)
if expr "$oldrev" : '00*$' >/dev/null
then
echo "tag name $name"
sh trigger-script-on-creating-tag.sh
fi
;;
refs/heads/*)
echo "branch name $name"
sh trigger-on-creating-branch-or-pushed-code.sh
;;
*)
echo "other"
exit 1
esac
}
while read REF; do process_ref $REF; done