git里程碑

里程碑即Tag,是人为对提交进行的命名。
1、首先从Github上克隆镜像hello-world.git版本库:
这里写图片描述
2、用户user1和user2分别在各自的工作区hello-world克隆这个裸版本库:
用户user1克隆:
这里写图片描述
用户user2克隆:
这里写图片描述

3、在工作区hello-world中分别设置版本库的用户名和邮箱
user1设置:
这里写图片描述
user2设置:
这里写图片描述
4、显示当前里程碑列表(hello-world.git版本库中):
这里写图片描述
使用-n<\num>参数,显示最多<\num>行里程碑的说明:
这里写图片描述

创建里程碑
a、创建轻量级里程碑,命令:git tag <\tagname> [<\commit>]
1、先创建一个空提交,然后在空提交上创建一个轻量级里程碑名为mytag,省略了commit参数,相当于在HEAD上即最新的空提交上创建里程碑:
这里写图片描述
2、查看里程碑:
这里写图片描述
3、当创建一个里程碑mytag后,会在版本库目录下创建一个新文件。轻量级里程碑实际指向的是一个提交,并且提交的内容就是刚进行的空提交:
这里写图片描述
缺点是:轻量级里程碑的创建过程没有记录,无法知道是谁创建的里程碑。并且使用git describe命令默认不使用轻量级里程碑生成版本描述字符串,显示的是前一个版本的里程碑名称:
这里写图片描述
使用–tags参数,也可以将轻量级里程碑用作版本描述符:
这里写图片描述

b、带说明的里程碑
创建里程碑时提供一个关于该里程碑的说明,
命令:(1)git tag -a <\tagname> [<\commit>]
(2)git tag -m <\msg> <\tagname> [<\commit>]
1、创建一个空提交:
这里写图片描述
2、命令使用-m <\msg>参数,在刚创建的空提交上创建一个带说明的里程碑:
这里写图片描述
3、查看里程碑
这里写图片描述
4、创建一个带说明的里程碑后,会在版本库目录下创建一个新的文件,该里程碑不再指向一个提交,而是一个tag对象:
这里写图片描述
这个对象tag会记录创建里程碑的用户,创建里程碑的时间。
5、虽然本身是一个tag对象,但是可以直接将其视为一个提交。
这里写图片描述
6、获取里程碑指向的提交对象tag的哈希值
这里写图片描述
7、获取提交对象的ID(多种方法):
这里写图片描述

删除里程碑
如果里程碑建立在错误的提交上,或者对里程碑的命名不满意,可以删除里程碑。一旦删除,不可恢复。
这里写图片描述
上图的删除中显示了里程碑所对应的提交ID,对里程碑进行重建(也就是不满意命名,先删除再重新用新的命名):
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值