Git本地版本回退与远端版本回退

本文详细介绍了如何在Git中进行版本回退,包括本地和远程分支的回退方法。阐述了commitid的概念,以及如何使用git reflog查找特定版本,并通过git reset --hard命令回退到指定版本。同时,文章还解释了如何在回退后,通过强制推送更新远程分支。

预备知识:
一个commit对应这一个版本,有一个commit id,40位的16进制数字,通过SHA1计算得到,不同的文件计算出来的SHA1值不同(有很小的几率相同,可忽略),这样每一个提交都有其独特的id。每提交一个新版本,实际上Git就会把它们自动串成一条时间线。
在Git中,HEAD表示当前版本,也就是e620a6ff0940a8dff…,HEAD^ 表示上一个版本,HEAD^^ :
表示上上一个版本,往上100个版本可以写成HEAD加连续100个^,也可以写成:HEAD~100。

git log:该命令显示从最近到最远的提交日志。
git log - -pretty=oneline:将只会显示提交的commit id号和对应的注释。
git reset –hard commit_id 或则是 git reset –hard HEAD^

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

git reflog 

2.接着回退版本:

git reset --hard a7e1d279

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

git reflog
git reset --hard Obfafd

2.紧接着强制推送到远程分支:

git push -f origin master ## 这里假设只有一个master分支

注意:本地分支回滚后,版本将落后远程分支,必须使用强制推送覆盖远程分支,否则无法推送到远程分支

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值