Git配合Tag的代码回滚
现有的远程仓库版本的tag为v1.0前置准备
具体操作:
[*]我们在本地修改一下readme文件,然后进行add,commit操作。
[*]再给我们的commit打上tag git tag -a v1.1 -m 'my version 1.1。
查看下我们的tag:
➜UI git:(master) git tag
v1.0
v1.1
v1.1的commit的内容是有错误的,会影响线上仓库的出问题,现在我们需要回滚到正常的v1.0的commit。
https://images2015.cnblogs.com/blog/743207/201705/743207-20170505115743570-472021088.png
具体回滚操作
[*] 第一步:checkout 指定的tag
➜UI git:(master) git checkout v1.0
[*] 第二步:将checkout出来的commit版本拉出一个bugfix的分支
➜UI git:(2a94dd7) git checkout -b bugfix
[*] 第三步:将bugfix分支中的代码强推(粗暴)至远程仓库master
➜UI git:(bugfix) git push origin bugback:master -f
这时候远程仓库代码已经恢复至tagv1.0的状态。
但是还有个问题,我们的master分支依旧处于tagv1.1的状态。
这时候我们可以粗暴的将commit的版本进行回退,使用
git reset --hard 2a94dd
这样就回退到v1.0的commit的状态了。
具体的分支与主线变化如图:
https://images2015.cnblogs.com/blog/743207/201705/743207-20170505155607961-1515763092.png
页:
[1]