git 常用命令(三)--版本回退

关于版本回退:

例如现在有A、B两个人,总共有3次提交 A1--A2--B1,而且两个人都在最新的提交上。现在的问题是A这个人发现A2提交是有问题的,需要去修改。

 

方法一:在现有的基础上进行修改

        如果发现并不是很严重的问题,可以通过log日志来找到问题,然后在B1提交上进行修改,然后commit后push,作为A3提交就可以。

 

方法二:版本回退(强退)

         首先说明一下,强退会引起较多问题,特别是多人在一个分支上开发时。所以原则是:能不强退就不强退,尽可能使用方法一,也就是通过在最新提交上修改来解决问题。

 

以下是A个人在本地分支上进行reset后,然后强推到远程仓库,此时A的本地仓库和远程仓库是一致的。

        1 >> git reset --hard (commit_id) 回到某次提交

        2 >> 然后推送到远程仓库 ,需要使用强推 git push -f

        版本回退后,git log只能看到回退后的commit_id之前的提交;

        如果需要看到回退之前所有的提交,可以使用 git reflog

 

但是问题是B个人的本地仓库还是停留在B1提交上。。。。。。

一种简单粗暴的办法是:让B在本地删除整个目录,然后再clone一次;

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值