git shell自动打tag
function push_tag() { #拿出当前匹配的test_ca_v2.1最近版本号 latelyTag=$(git describe --match "test_ca_v2.1*" --abbrev=0 --tags $(git rev-list --tags --max-count=1)) #版本前缀 tagPre="test_ca_v" #截取字符串,tag 是变量名,# 号是运算符,*test_ca_v 表示从左边开始删除第一个 test_ca_v 号及左边的所有字符 version=${latelyTag#*$tagPre} echo "最近版本:"$latelyTag #echo $version #按.分割字符串,变成3段 array=(${version//./ }) arrayLen=${#array[*]} if [[ $arrayLen != 3 ]];then echo "版本号长度不对,必须为 v1.x.x的格式" read -p "按任意键关闭" -n 1 exit fi #版本号处理 newVersion="" for (( i = 0; i < $arrayLen; i++ )); do v=${array[i]} if [[ $i == 2 ]];then #第三位小版本+1 v=`expr $v + 1` fi newVersion+=$v"." done newVersion=${newVersion%?} #拼接 newTag=${tagPre}${newVersion} echo "新的版本:"$newTag if git tag -l | grep -q $newTag;then echo $newTag"已存在" read -p "按任意键关闭" -n 1 exit fi #打标签 #git tag -a $newTag -m "" #推送单个标签到远端 #git push origin $newTag } push_tag read -p "按任意键关闭" -n 1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律