在GitHub中的开源项目经常可以看到发布新版本,是版本号控制的。Tag的本质就是别名,某个commit的别名,就像网址是IP的别名,网址便于我们记忆,而IP则是机器的规则。我们自己的项目中也可以使用这个功能控制发版。
使用git branch命令即可做到:
git branch newTagName commitHash
举个栗子
想在某个commit打一个版本,首先需要看一下所有的commit,查到commit的hash值:
git log
commit adb81b963f58f339cb5efada874f89a74ad7381e
Author: cheerfun <xxxx@xxx.com>
Date: Wed Sep 12 17:16:46 2018 +0800
feature: 增加nfs文章
commit fe5a0f40ef7569a09a7e5ee17627d5c7de2907c8
Author:cheerfun <xxxx@xxx.com>
Date: Thu Aug 30 23:02:04 2018 +0800
sync: 使用ssh-keygen自动化
······
假设我要给hash为adb81b963f58f339cb5efada874f89a74ad7381e的commit打版本为v1.0.0,则命令如下
git tag adb81b963f58f339cb5efada874f89a74ad7381e v1.0.0
打完tag后,可以通过“git tag --list”查看所有的tag:
v1.0.0
(END)
此时版本以分支的形式checkout出该版本代码,分支名称为的“tags/v1.0.0”,在Jenkins中以git的tag操作触发代码构建,便可以在部署流程中引入版本管理,如果代码有问题也可以方便的回滚 ✌️
网友评论