首页 > 其他分享 >git 版本回退

git 版本回退

时间:2023-02-09 19:55:16浏览次数:57  
标签:git 回到 指令 版本 回退 commit

Git 的版本回退操作

 

内容介绍:

一、时光穿梭机-版本回退

二、查看版本,确定需要回到的时刻点

三、回退指令:

 

 

  1. 时光穿梭机-版本回退

当把git从仓库的指令用熟之后,就可以发现一个有趣的知识。

 

  1. 介绍:
    因为它可以看作在开发这个里面的一个后悔药。在写代码时,难免会出一些差的,导致想回到以前,但是在写代码的时候,如果用了git,那这个就是可能的。

即便把代码误删了,或者误修改了,都是可以,是可以用时光机回到以前的。

版本回退分为两步骤进行操作

 

2、步骤:

①查看版本,确定需要回到的时刻点

指令:  

git log

git log--pretty=oneline 查看时间点(日志)这里推荐用此种。

 

②回退操作

指令:Git reset-hard提交编号

 

二、查看版本,确定需要回到的时刻点

分别运行查看版本的两种指令:

第一种指令,git log:

此指令将会把以前的操作一一列举出来,这里

commit7c1eadd313d1d5d68a82fc933d0a7425f5803407(HEAD->master) 此指令很重要,为某一时间点操作的序号,通过特殊的编码为此字符串。(HEAD->master)为当前最新状态。找到之前的时间点进行穿梭。

 

第二种指令:git log--pretty=oneline

 

两种指令执行的显示效果不同。只显示commit id 和注释(很重要,一定要写)

两种方法,因情况而定。但最终得到的都是commit ID。但第二种方式更加简便。

 

三、回退指令

Git reset-hard提交编号(为第一步的commit Id)

案例:

想做时光机回到创建好第一个文件readme.txt 的时候。

复制commit id(注意需要鼠标右键复制)

 

 

此时没有执行注意文件内容:

 

执行后文件内容,回到了最初的状态:

回到过去的任务已经完成需要过去的代码可复制查看。

 

四、回到将来

进行查询信息

但是发现只显示一个版本号。(注意:此指令只显示当前的版本号)

由于我们打开窗口,以上会显示之前操作后的版本号,但是关闭窗口后以前的版本号将会消失。

 

注意:

回到过去之后,想要再回到之前最新的版本号的时候,则需要使用指令去查看历史的操作,已得到最新的comment ID

指令:git reflog

操作:

可以看到回到过去的指令和ID号

 

注意

7cleadd 也是commit id 亦可以运用讲讲其复制。运行结果

 

查看文件内容

回到之前的文件,回到将来。

回到过去,未来指令完成。要想回到某一时间点,也是相同的操作。

 

小结

a.要想回到过去,必须先得到commit id,然后通过git reset-hard进行回退:

b要想回到未来,需要使用git reflog进历更操作查看,得到最新的commit id,

c.在写回退指令的时候commit id可以不用写全,gt自动识别,但是也不能写太少,至少需要写前4位字符.

这样,结合前面的两种指令就可以在版本的记录里面来回穿梭。

不是必须用尽量不用。

 

标签:git,回到,指令,版本,回退,commit
From: https://www.cnblogs.com/woodx/p/17106839.html

相关文章

  • KubeSphere 3.3.2 版本正式发布!
    距离上一个版本v3.3.1发布,已经过了3个多月,今天我们很高兴宣布KubeSpherev3.3.2正式发布!此版本由68位贡献者参与代码提交,感谢各位贡献者对KubeSphere项目的支持与......
  • n包管理Node版本
      刚刚在VueCLI官网看到了一个有趣的东西,在此做一下记录:描述:https://cli.vuejs.org/zh/guide/installation.html说明:  n在macOS、Linux上受支持,n不适用于M......
  • KubeSphere 3.3.2 版本正式发布!
    距离上一个版本v3.3.1发布,已经过了3个多月,今天我们很高兴宣布KubeSpherev3.3.2正式发布!此版本由68位贡献者参与代码提交,感谢各位贡献者对KubeSphere项目的支持......
  • EasyCVR新版本如何通过接口获取AI智能分析网关推送的告警照片?
    在AI人工智能技术进一步落地应用的趋势下,基于云边端深度融合与协同的“AI+”模式,已经成为当前行业与技术发展的新趋势。基于EasyCVR和智能分析网关的AI智能识别与分析能力,通......
  • Git远程仓库命令
    gitgit.acwing.com常用命令[email protected]:xxx/XXX.git(这段在推中获取):将本地仓库关联到远程仓库gitpush-uoriginmaster:将当前分支推......
  • php版本的umd电子书制作工具
    代码:<?phpset_time_limit(0);ini_set('memory_limit','-1');//error_reporting(E_ALL);//ini_set('display_errors',0);/**+--------------------------------......
  • spring-security-oauth2-client与jdk版本不符合报错
    报错描述:java.lang.UnsupportedClassVersionError:org/springframework/security/oauth2/client/registration/ClientRegistrationRepositoryhasbeencompiledbyamo......
  • OpenSSH 9.2P1升级以及版本显示的处理过程
    说明本次维护的时间是2023-2-9最新已发布的补丁是OpenSSH9.2P1版本其他本本应该是类似处理.下载介质在OpenSSH官网打开相关界面.http://www.openssh.com/......
  • git取消版本控制
    参考:https://blog.csdn.net/lzx5290/article/details/127665687?spm=1001.2014.3001.5506执行命令如下:MicrosoftWindows[版本10.0.19041.208](c)2020MicrosoftCo......
  • 【AGC】已上架的应用签名发生变化升级新版本问题
    ​关于AGC的已上架的应用签名发生变化,该如何升级新版本问题。问题背景:cp反馈目前已有一个应用程序上传至华为市场。由于更新了开发供应商,导致新版安装包的签名发生了变化......