git tag的查看、添加、推送和删除

2021-03-15 10:44:00
柯作
转贴:
掘金
3249
摘要:由于项目太大,小伙伴们负责对应的模块,有的小伙伴可能负责A模块,有的小伙伴负责B模块。因此,我们应该给每一次更新到生产环境的代码都打一个tag(合并master时),然后在进行推送到生产环境,如果生当前版本生产环境出现bug,则可以快速的回退到上一个标签的版本,下面我简单介绍下tag的用法。

由于项目太大,小伙伴们负责对应的模块,有的小伙伴可能负责A模块,有的小伙伴负责B模块。因此,我们应该给每一次更新到生产环境的代码都打一个tag(合并master时),然后在进行推送到生产环境,如果生当前版本生产环境出现bug,则可以快速的回退到上一个标签的版本,下面我简单介绍下tag的用法。


1、创建一个带备注的标签(tag)

git tag -a V20210311 -m 'Update friend application message'
上面的命令我们成功创建了本地一个版本 V20210311 ,并且添加了附注信息 ‘ 更新好友申请信息’

但是目前这个标签仅仅是提交到了本地git仓库.


2、同步到远程代码库,tag 远程推送:
git push origin --tags

这样我们就把本地版本推送到了远程代码仓库.


3、当小伙伴从GitHub上将项目克隆下来之后,可以通过git tag命令来查看当前有哪些tag,如下:
git tag

tag的版本号就是提交的日期,小伙伴可以根据readme文档中的更新记录来确定你想回到哪一个版本中


4、比如我想退回到V20210310这个版本去,此时通过git show V20210310命令来查看对应的版本号,如下:
git show V20210310


5、commit后面的就是对应的提交版本号,然后通过git reset --hard b1014a2a4fef206bba50d970b7133c2de313b1b4命令即可回到只有权限管理模块的时代。如下:

git reset --hard b1014a2a4fef206bba50d970b7133c2de313b1b4
以上命令可以帮助小伙伴在任意版本之间跳跃。

GIT删除本地tag和远程tag

以tag V20210310,这个tag已经同步到远程,但是现在发现了一个问题,需要撤回该tag,git命令如下:
删除本地tag:
git tag -d V20210310
删除远端tag:(本地删除后,再删除远端tag(推送一个空的tag到远端tag,用空值覆盖原值):)
git push origin :refs/tags/V20210310
=也可以使用 --delete 参数:
git push origin --delete tag V20210310

注:对于默认分支,可以由于权限问题删除失败。


发表评论
评论通过审核后显示。