【git】代码回退指定commit
【注意:如果提交的错误代码较少,可以在本地修改成 commit之前的正确代码样子,然后再提交一次即可。不用麻烦的操作回滚。】
开发人员错误将代码提交到gitlab的远程dev分支,回滚方法如下:
1、本地回滚
进入git bash,进入该工程目录:
leichen@N MINGW64 ~
$ cd c: leichen@N-5C MINGW64 /c
$ cd git_home leichen@N-5C MINGW64 /c/git_home
$ cd zntp leichen@N-5C MINGW64 /c/git_home/zntp (dev)
$ git log
commit 095d0ada370c32ace4fd2ebcd4372beea9a64f77
Author: MirGao <Mir_Gao15517374303@163.com>
Date: Fri Nov 23 16:50:28 2018 +0800 实现接口数量7个 commit b8b9fa09775a511d522e584a3be6817c9de7e43b
Author: PC-20180625CLEK\Administrator <@163.com>
Date: Mon Oct 15 14:58:07 2018 +0800 bug修改
确认回滚到版本“commit” = b8b9fa09775a511d522e584a3be6817c9de7e43b,bug修改;操作方法如下:
leichen@N-5CG724557J MINGW64 /c/git_home/***** (dev)
$ git reset --hard b8b9fa09775a511d522e584a3be6817c9de7e43b
HEAD is now at b8b9fa0 bug修改
切换分支: git checkout dev
至此版本回退完毕,但是此时如果提交到远程,注意:这只是本地撤消,如果已经push到服务器了,则此操作只回退了本地,服务器不受影响,下次git push要求先运行git pull,又将服务器的merge记录下载到本地了。其实不能达到远程回退的要求。
2、远程回退
登陆gitlab服务器,进入项目对应的目录底下操作。此操作相当危险,在操作一定要先将相应项目的目录整个打包备份;然后进入到项目文件夹中操作:
cd /data/gitlab/repositories/alibaba/*******.git
git checkout dev
#此时会报错:fatal: This operation must be run in a work tree
#原因在于:git配置了环境变量,命令无法识别到作用的工程名称,所以需要加上--work-tree参数
git --work-tree=/data/gitlab/repositories/alibaba/zntp.git reset
--hard b8b9fa09775a511d522e584a3be6817c9de7e43b
HEAD is now at b8b9fa0 bug修改
#即可实现代码回滚
#git --work-tree的用法:[--work-tree=<path>]
远程回退完毕。
【git】代码回退指定commit的更多相关文章
- git代码回退
情况1.还没有push可能 git add ,commit以后发现代码有点问题,想取消提交,用: reset git reset [--soft | --mixed | --hard] eg: gi ...
- git回滚到指定commit
一次性commit好多文件,push上去之后,发现工程不可用,只能回滚,上网搜索回滚办法,下边这个是自己亲试的,特别好使: 操作步骤: 1.git checkout the_branch 2.git ...
- git代码回滚
有时候我们用git提交代码后发生了错误,代码冲突了啊等等,我们需要将代码回到以前的某个版本 git代码回退有两种办法 一.git reset(推荐): 它是将最新的commit删除,用以前的某个版本的 ...
- androidstudio项目如何使用git版本回退
使用android studio 编写代码错误,有时可能会需要将项目版本回退到以前的某个版本上,这对于很多刚使用git的网友来说操作可能不是很懂,下面为大家整理了android studio 回退已经 ...
- git代码版本回退
git log 用于查看我们修改提交的快照记录(commit记录),然后会有个commit修改记录的id编号,该命令显示从最近到最远的提交日志,我们可以看到3次提交记录,如下: git checkou ...
- Git回滚代码到某个commit
回退命令: $ git reset --hard HEAD^ 回退到上个版本$ git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前 $ git rese ...
- Git回滚到指定的commit
查看历史commint $ git log (可以记下sha码) 回退命令: $ git reset --hard HEAD^ 回退到上个版本$ git reset --hard HEAD~3 回退到 ...
- 如何删除远端已经推送的Commit记录???(Git版本回退)
如何删除远端已经推送的Commit记录???(Git版本回退) 简单描述 突然事件:刚刚,就在刚刚,发生误了操作. 操作描述:我把修改的文件保存错分支了,已经commit了.并且还push上去了.对, ...
- Git合并一次commit到指定分支
1 在当前分支,查看要合并的分支版本号 git log 需要合并的commit版本号 16b7df3aa1e64e00554a8a3c871e59db8cd87b16 2 切换到 指定分支 git c ...
随机推荐
- OverLoad怎么用
首先给出一个实例 package practice3; public class TryOverLoad { public static void main(String[] args) { Syst ...
- 你必须知道的Docker数据卷(Volume)
本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章. 一.将Docker数据挂载到容器 在Docker中,要想实现数据的持久化(所谓 ...
- javascript中的定时器入门
JavaScript提供定时器(timer)的功能,可以延期执行或重复执行函数或代码段. window对象提供了三个方法来实现定时器的效果,分别是setTimeout().setInternal()和 ...
- Linux gzip: stdin: not in gzip format
在解压tar.gz文件的时候报错 tar -zxvf otp_src_18.3.tar.gz gzip: stdin: not in gzip format tar: Child returned s ...
- CSS学习笔记-背景属性
一.背景尺寸属性: 1.含义: 背景尺寸属性是CSS3中新增的一个属性,专门用于设置背景图片大小 2.格式: 1.1具体像素: backgro ...
- CSS学习笔记-过度模块-编写过渡效果
过渡模块-编写过渡效果: 1.编写过渡套路: 1.1不要管过渡,先编写基本界面 1.2修改我们认为需要修改的属性 1.3再给被修改属性的元素添加过渡即可 2.弹性效果 < ...
- IDEA org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):
引用地址:https://guozh.net/idea-org-apache-ibatis-binding-bindingexception-invalid-bound-statement-not-f ...
- Octave中的一些常用操作
>> 5+6ans = 11>> 1~=2ans = 1 %1表示true,0表示false>> 1~=1 %1不等于1ans = 0>> a=2 ...
- 004.MongoDB数据库基础使用
一 数据库管理 1.1 创建数据库 [root@uhost ~]# mongo --host 172.24.9.225 --port 27017 -u useradmin -p useradmin & ...
- ref的使用
参考地址https://www.cnblogs.com/goloving/p/9404099.html <img src="./01.jpg" ref="img&q ...