git上的标签一般是用于标记版本,
当发布新版本后,便将该版本的代码打上Tag,用以区别及管理
使用标签前需要将代码提交到马云上
以上是提交git。
创建并提交Tag
使用Git 命令删除Tag Android Studio上没发现界面化的删除Tag操作
定位到项目根路径(该项目.git 文件夹所在处,.git 文件夹默认是隐藏的)
右键打开Git Bash
输入 git tag 查看本地tag
输入 git tag -d v1.0.3 删除本地名为“v1.0.3”的Tag
输入 git push origin –delete v1.0.3 删除远程名为“v1.0.3”的Tag(该命令Git v1.7.0 之后支持)
输入 git push origin :refs/tags/v1.0.3 也能删除远程名为“v1.0.3”的Tag
下面我们使用git命令来创建tag
git tag v1.1.0 // 打v1.1.0tag
git push --tags // 上传至服务端
Username for '
http://code.mocaapp.cn': // 输入账号
Password for 'http://
lixiangyang@code.mocaapp.cn': // 输入密码
Total 0 (delta 0), reused 0 (delta 0)
* [new tag] v1.1.0 -> v1.1.0
git tag // 查看打的tag
v1.1.0
v1.7.0
在操作的时候我碰到一个bug,是在删除Tag或者分支时,
它的tag名称和分支名称一样时,会报错。
git push origin --delete 0.1.0
error: dst refspec 0.1.0 matches more than one.
error: failed to push some refs to 'git@github.com:TiFG/juice.git'
出现这个错误的原因是在于远程Git服务器上名称为0.1.0的有两个对象:一个是tag,一个是分支;也就是说tag分支和branch分支同名了,
在执行 git push origin --delete 0.1.0这个命令时Git服务器不知道要删除哪个。
解决办法
解决办法自然是明确告诉Git服务器要删除的是tag 还是 分支。
1、删除分支
删除名称为0.1.0分支:
git push origin :refs/heads/0.1.0
命令行执行如下:
Ricky@TiFX MINGW64 /f/MyProject/juice (master)
$ git push origin :refs/heads/0.1.0
- [deleted] 0.1.0
2、删除tag
删除名称为0.1.0 的tag
git push origin :refs/tags/0.1.0
日常开发中,在命名分支和tag的时候应当使用不同的名称,尽量避免重名。
搞定!