git本地版本回退与远端版本回退(回滚)

git log:该命令显示从最近到最远的提交日志。

commit e620a6ff0940a8dff91e0d252f30e4d138ec37be
Author: TangShengqin <15527733782@163.com>
Date:   Wed Jan 3 10:35:44 2018 +0800
    练习版本回退,假设这是版本3
commit 33342d9870f104719d351539a15e74a1382407ea
Author: TangShengqin <15527733782@163.com>
Date:   Wed Jan 3 10:34:03 2018 +0800
    练习版本回退,假设这是版本2
......
1
2
3
4
5
6
7
8
9
git log - -pretty=oneline:将只会显示提交的commit id号和对应的注释。(这里是两个-,Markdown显示两个-为一个-)

e620a6ff0940a8dff91e0d252f30e4d138ec37be 练习版本回退,假设这是版本3
33342d9870f104719d351539a15e74a1382407ea 练习版本回退,假设这是版本2
......
1
2
3
git reset –hard id 之前的版本日志信息:

git log --pretty=oneline
e620a6ff0940a8dff91e0d252f30e4d138ec37be 练习版本回退,假设这是版本3
33342d9870f104719d351539a15e74a1382407ea 练习版本回退,假设这是版本2
1
2
3
git reset –hard commit_id 或则是 git reset –hard HEAD^

git reset --hard HEAD^   # hard选项,表示彻底将工作区、暂存区和版本库记录恢复到指定的版本库
1
使用git reset –hard 进行版本回退之后,在本地查看README.md,里面已经变为版本2对应的内容了。

如果你在本地做了错误提交,那么回退版本的方法很简单
1.先用下面命令找到要回退的版本的commit id:

git reflog 
1
2.接着回退版本:

git reset --hard a7e1d279
1
a7e1d279就是你要回退的版本的commit id的前面几位。

远程分支版本回退的方法
如果你的错误提交已经推送到自己的远程分支了,那么就需要回滚远程分支了。
1.首先要回退本地分支:

git reflog
git reset --hard Obfafd
1
2
2.紧接着强制推送到远程分支:

git push -f origin master ## 这里假设只有一个master分支
1
origin就是一个名字,它是在你clone一个托管在Github上代码库时,git为你默认创建的指向这个远程代码库的标签,origin指向的是repository,master只是这个repository中默认创建的第一个branch。当你git push的时候因为origin和master都是默认创建的,所以可以这样省略。
关于origin意义,知乎上的讨论
注意:本地分支回滚后,版本将落后远程分支,必须使用强制推送覆盖远程分支,否则无法推送到远程分支
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值