Git学习笔记 chapter02--版本回退
来源:互联网 发布:java判断txt文件结尾 编辑:程序博客网 时间:2024/06/06 18:06
点击进入:廖雪峰老师的Git教程
上次搞到了版本的修改,在此之上我们再修改一下,给它增加一段文本”This is my third use.”,并提交,现在内容是这样:
$ cat README.MDThis is my first use.This is my second use.This is my third use.
每一次commit就像当于是我们打游戏进行了存盘,一旦以后进行什么错误的操作,都可以从这次存盘里恢复。
要想恢复以前的版本,得先用git log命令查看一下总共有哪些版本
$ git logcommit 69f91cb31938245441c4f3e044c8d65c8e656cda (HEAD -> master)Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 20:49:50 2017 +0800 modify 3commit cb8afa8eb639bd9627686aa7d85a33eaa83d348fAuthor: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 20:43:11 2017 +0800 modify filecommit be8afaa3502e2e7bf53c240f28189146d0b0b2c6Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 18:19:13 2017 +0800 new file README.MD
这里我们看到有3个版本,git log –pretty=oneline加上后面这个参数就会看到简要的信息,只显示commit id(版本号),这个版本号是一个SHA1计算出来的一个非常大的数字,用十六进制表示。
$ git log --pretty=oneline69f91cb31938245441c4f3e044c8d65c8e656cda (HEAD -> master) modify 3cb8afa8eb639bd9627686aa7d85a33eaa83d348f modify filebe8afaa3502e2e7bf53c240f28189146d0b0b2c6 new file README.MD
这里HEAD是指当前最新的版本,那么上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然数量大了,例如要回退n个版本,那就是HEAD~n,例如HEAD~10回退10个版本。
这里回退到版本2。
$ git reset --hard HEAD^HEAD is now at cb8afa8 modify file$ git logcommit cb8afa8eb639bd9627686aa7d85a33eaa83d348f (HEAD -> master)Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 20:43:11 2017 +0800 modify filecommit be8afaa3502e2e7bf53c240f28189146d0b0b2c6Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 18:19:13 2017 +0800 new file README.MD$ cat README.MDThis is my first use.This is my second use.
这时发现我们的版本已经被修改到了第二个版本,但是如果我们想要再回去呢?
同样的命令,后缀加上我们要回退的commit id,就能回去了。
这里commit id输入前面前缀,保证不会与其他版本重复就可以了。
$ git reset --hard 69f91cbHEAD is now at 69f91cb modify 3$ git logcommit 69f91cb31938245441c4f3e044c8d65c8e656cda (HEAD -> master)Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 20:49:50 2017 +0800 modify 3commit cb8afa8eb639bd9627686aa7d85a33eaa83d348fAuthor: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 20:43:11 2017 +0800 modify filecommit be8afaa3502e2e7bf53c240f28189146d0b0b2c6Author: xiaoyangLee <lixiaoyang2020@gmail.com>Date: Thu Jul 20 18:19:13 2017 +0800 new file README.MD$ cat README.MDThis is my first use.This is my second use.This is my third use.
版本回退就成功了。
但是如果把窗口关掉了,还是想回退到那个版本呢?
git reflog可以记录我们的每一次命令,这样就能找到commit id。
$ git reflog69f91cb (HEAD -> master) HEAD@{0}: reset: moving to 69f91cbcb8afa8 HEAD@{1}: reset: moving to HEAD^69f91cb (HEAD -> master) HEAD@{2}: commit: modify 3cb8afa8 HEAD@{3}: commit: modify filebe8afaa HEAD@{4}: commit (initial): new file README.MD
阅读全文
0 0
- Git学习笔记 chapter02--版本回退
- git学习笔记之版本回退
- 【Git/Github学习笔记】Git常用命令(版本回退)
- git回退版本笔记
- Git学习-版本回退
- Git学习笔记(三)---版本回退
- Git-版本回退(笔记)
- git 学习二之版本回退
- git 回退版本
- Git-版本回退
- git 版本回退
- git回退版本
- git版本回退
- Git版本回退
- git版本回退
- Git版本回退
- git 版本回退
- Git 版本回退
- BZOJ 3714 [PA2014]Kuglarz Kruskal
- Oracle之char类型-yellowcong
- Android常用库
- 关于mybatis-generator配置文件解析失败的坑
- HTTP POST请求报文格式分析与Java实现文件上传
- Git学习笔记 chapter02--版本回退
- Mycat源码篇 : 起步,Mycat源码阅读调试环境搭建
- 题目 poj – 1426(A题)
- DOM节点之nodeType
- Out of Hay
- XYNUOJ 1000 例题2-1 连乘计算
- spring声明式事务管理(注解实现)
- 使用taglib来提取在音乐文件中的封面信息
- smack操作openfire个人信息