我不得不知道的git骚操作

git回退到某个commit

场景:
合到master然后上线了,但是产品让我回滚,于是我就在发布系统把之前发布的版本覆盖到了现在,但是发布系统的上个版本有个错误,于是我们就得把master分支上面的代码回滚到合并之前。

  1. 命令行方法

    1. 使用git log命令查看所有的历史版本,获取某个历史版本的id,假设查到历史版本的id是139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96。
    2. git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
    3. 把修改推到远程服务器
git push -f -u origin master
  1. gui方法

    点击 reset to this commit ->hard
    本地的状态是没有可以push的内容的 不要慌 直接点击push
    ok 我们使用fore push 的方法就OK了

Git误删未push到origin的本地分支
解决:git reflog 拿到删除分支之前的最后一次提交的sha1 然后git branch branchName <sha1> 即可恢复本地分支

BTC...

相关推荐