git 代码回滚

  1. sourceTree 中 revert 译为提交回滚,作用为忽略你指定的版本,然后提交一个新的版本。新的版本中已近删除了你所指定的版本。
  2. reset 为 重置到这次提交,将内容重置到指定的版本。git reset 命令后面是需要加2种参数的:–-hard 和 –-soft。这条命令默认情况下是 -–soft。
  3. 执行上述命令时,这该条commit号之 后(时间作为参考点)的所有commit的修改都会退回到git缓冲区中。使用git status 命令可以在缓冲区中看到这些修改。而如果加上-–hard参数,则缓冲区中不会存储这些修改,git会直接丢弃这部分内容。可以使用 git push origin HEAD --force 强制将分区内容推送到远程服务器。

代码回退

  1. 首先要确定远程服务器支持回退操作,这里我用的是gitlab服务器,回退前要现将hooks注释掉,登录gitlab服务器所在Linux
cd /opt/gitlab/embedded/service/gitlab-shell/hooks
mv pre-receive pre-receive.bak
  1. 代码回退
  • 默认参数-soft,所有commit 的修改都会回退到git缓冲区
  • 参数–hard,所有commit的修改直接丢弃
$ git log -10	#查看近10次的提交记录,找到对应commit id
$ git reset --hard HEAD^        回退到上个版本
$ git reset --hard commit_id    退到/进到 指定commit_id
  1. 推送到远程
$ git push origin HEAD --force

可以吃后悔药

可以吃的后悔药->版本穿梭
当你回滚之后,又后悔了,想恢复到新的版本怎么办?
用git reflog打印你记录你的每一次操作记录
找到你操作的id如:b45959e,就可以回退到这个版本

$ git reflog
$ git reset --hard b45959e
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值