git 版本回退

实现方式:

可以通过reset(回退)/revert(反做)两种方式实现。

适用场景:

reset :如果想恢复到之前某个提交的版本,且那个版本之后提交的版本我们都不要了,就可以用这种方法。比如我们commit了三个版本(版本一、版本二、 版本三),想回退到版本一,版本二,版本三都不要,就可以通过reset回退

revert:如果我们想撤销之前的某一版本,但是又想保留该目标版本后面的版本,记录下这整个版本变动流程,就可以用这种方法。比如,我们commit了三个版本(版本一、版本二、 版本三),突然发现版本二不行(如:有bug),想要撤销版本二,但又不想影响撤销版本三的提交,就可以用 git revert 命令来反做版本二,生成新的版本四,这个版本四里会保留版本三的东西,但撤销了版本二的东西

具体操作:

1.git reset

 git reset --hard 目标版本号

目标版本号可以通过以下方式获取

可以通过git log 命令查看

也可以通过gitLab查看

 

git push origin master -f

具体例如

 git reset --hard 3a24dfabef5ed07376ef3eaa5a75fd9f290ee9f2

git push origin master -f

 注意:

当我们有时候回滚了代码,想强制push到远程仓库的时候,

git push origin --force

会报如下错误:

You are not allowed to force push code to a protected branch on this project

这是因为项目分支master设置了保护所致,是为了防止别人乱提交代码设置的

可以到项目的Settings页面下找到Protected Branches,有如下两种解决方法

1.可以直接点该分支旁的Unprotect按钮,解除保护,但是这种方法不推荐

2.第二种方法是在Allowed to push下选择允许那些角色或具体那些用户可以提交,在这里可以选择你自己

设置完毕后再重新提交就成功了。

git撤销本地commit

git reset HEAD~

2.git revert

git revert -n 目标版本号 (注意: 这里可能会出现冲突,那么需要手动修改冲突的文件。而且要git add 文件名。)

git commit -a -m '注释说明'

git push origin 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值