wangwengwu 发表于 2018-9-17 06:45:04

Git系列五之标签管理

  笔者Q:552408925、572891887
  架构师群:471443208
  bjstack运维社区:524721466

1.Git标签管理
  当版本仓库内的数据有个大的改善或者功能更新,我们经常会打一个类似于软件版本号的标签,这样通过标签就可以将版本库中的某个历史版本给记录下来,方便我们随时将特定历史时期的数据取出来用,另外打标签其实只是像某个历史版本做了一个指针,所以一般都是瞬间完成的。

1.1创建本地标签
  创建带有说明的标签,-a指定标签名字,-m指定说明文字
  

# git tag -a v1.0.0 -m "version 1.0.0>
1.2查看本地标签
  1.查看当前本地所有标签
  

# git tag -l v*  
v1.0.0
  
v1.0.1
  

  2.查看当前1.0版本的详细信息
  

# git show v1.0.0  
tag v1.0.0
  
Tagger: xuliangwei
  
Date:   Sun Nov 6 03:12:44 2016 +0800
  


  
version 1.0.0>  

  
commit 95734131860ef7c9078b8a208ff6437d0952380b
  
Author: xuliangwei
  
Date:   Sun Nov 6 02:15:35 2016 +0800
  

  
chnged name index.html->index.php
  

  
diff --git a/index.html b/index.html
  
deleted file mode 100644
  
index e69de29..0000000
  
diff --git a/index.php b/index.php
  
new file mode 100644
  
index 0000000..e69de29
  

1.3删除本地标签
  我们为同一个提交版本设置了两次标签,删除重复性的标签
  

# git tag -d v1.0.1  
已删除 tag 'v1.0.1'(曾为 3c13e43)
  
# git tag -l v*
  
v1.0.0
  

1.4推送本地标签
  如上操作都是基于打标签以及删除标签,下面我们来学习下打完标签后如何推送至远端服务器
  也可以使用git push origin –-tags推送所有本地建立的tag包
  

# git push origin v1.0.0  
Counting objects: 1, done.
  
Writing objects: 100% (1/1), 167 bytes | 0 bytes/s, done.
  
Total 1 (delta 0), reused 0 (delta 0)
  
To git@git-node1:root/git_demo.git
  
*          v1.0.0 -> v1.0.0
  

1.5获取远程标签
  使用git pull获取最新tag包,可以使用git fetch强制获取
  

# git pull origin v1.0.0s  
remote: Counting objects: 1, done.
  
remote: Total 1 (delta 0), reused 0 (delta 0)
  
Unpacking objects: 100% (1/1), done.
  
来自 git-node1:root/git_demo
  
* [新tag]         v1.0.0   -> v1.0.0
  
Already up-to-date.
  

1.6删除远程标签
  通过push delete参数来删除远程标签
  

# git push origin --delete tag v1.0.0  
To git@git-node1:root/git_demo.git
  
-          v1.0.0
  

  也可以先删除本地tag标签,然后推送空标签至于远程进行删除
  

# git tag v1.0.1  
# git push origin v1.0.1
  
Total 0 (delta 0), reused 0 (delta 0)
  
To git@git-node1:root/git_demo.git
  
*          v1.0.1 -> v1.0.1
  

  
//删除本地tag
  
# git tag -d v1.0.1
  
已删除 tag 'v1.0.1'(曾为 9573413)
  

  
//推送空tag至远程进行删除
  
# git push origin :refs/tags/v1.0.1
  
To git@git-node1:root/git_demo.git
  
-          v1.0.1
  

1.7Git标签小结
  git版本号规则
  内部版本    B1.1.0
  外部版本    V1.1.0
  补丁版本    P1.1.0
  

命令git tag –a-m "message"      //在当前commit状态新建一个tag  
命令git tag -l    //列出相对应版本号tag
  
命令git push origin       //推送一个本地标签
  
命令git push origin --tags //推送全部未推送过的本地标签
  
命令git tag -d    //删除一个本地标签
  
命令git push origin --delete tag         //删除一个远程标签
  
命令git push origin :refs/tags/   //删除一个远程标签
  

  笔者Q:552408925、572891887
  架构师群:471443208
  bjstack运维社区:524721466


页: [1]
查看完整版本: Git系列五之标签管理