git 学习(2)--恢复版本
查看修改历史记录
$ git log
commit fba77877d316436c1b774b8933380ebcac668040
Author: keith <ustbfxx@163.com>
Date: Fri Jan 16 01:34:06 2015 +0800
add a git instance
commit 148ff70cb26b4805609ada5f95436e002490adb9
Author: keith <ustbfxx@163.com>
Date: Wed Jan 14 04:14:20 2015 +0800
add good study
commit 69a629d7ec0e0c9f582fb26bb50e5974b18c55a3
Author: keith <ustbfxx@163.com>
Date: Tue Jan 13 22:51:10 2015 +0800
create readme.txt file
如果我们嫌输出信息太多,可以加上--pretty=oneline
$ git log --pretty=oneline
fba77877d316436c1b774b8933380ebcac668040 add a git instance
148ff70cb26b4805609ada5f95436e002490adb9 add good study
69a629d7ec0e0c9f582fb26bb50e5974b18c55a3 create readme.txt file
这里fba77877..8040是commit id版本号,是通过SHA1计算出来的一个非常大的数字
回退到上一个版本
$ git reset --hard HEAD^
HEAD is now at 148ff70 add good study
$ cat readme.txt
good git
git is a file version control system
good good study
可以看出已经回到上一个版本,那如何在返回原来的版本呢
$ git reset --hard fba77877
HEAD is now at fba7787 add a git instance
$ cat readme.txt
good git
git is a file version control system
good good study
Git git=new Git();
这里的commit id不需要输入全部,不过也不能太少,不然git会无法确定是那一个,HEAD指向commit id直接会返回到这个版本号。这些版本号git都是有记录的,我们通过git reflog来查找输入的命令,可以指向我们要返回的commit id
$ git reflog
fba7787 HEAD@{0}: reset: moving to fba77877
148ff70 HEAD@{1}: reset: moving to HEAD^
fba7787 HEAD@{2}: commit: add a git instance
148ff70 HEAD@{3}: commit: add good study
69a629d HEAD@{4}: commit (initial): create readme.txt file
总结命令
$ git log --pretty=online//查看提交的次数和commit id
$ git reset --hard HEAD^ //回到上一个版本
$ git reset --hard commit_id //返回某一个commit_id 的版本
$ git reflog //查看提交的命令
正确的步骤是 修改完后 使用 git add命令,再提交,如果重新修改后没有使用add命令,提交之后新修改的是不会提交的。
git 学习(2)--恢复版本的更多相关文章
- git学习2:版本库
创建版本库 版本库,又称仓库,英文名为repository,版本库内的所有文件都可以被Git管理起来,即每个文件的修改.删除,Git都能跟踪. 1,在目录中创建版本库 在目录中有两种创建版本库的方法, ...
- Git 学习之关于版本库
记得在第一次接触代码的时候,当对一些改动不是很确定的时候,我的做法就是在我的电脑上保留多个文件,分别以不同的名字来保存,以便于以后发现某个地方的带动是错误的好做修改,现在想想真是好笑啊. 慢慢的在工作 ...
- git学习之创建版本库(三)
创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以 ...
- git学习之创建版本库
创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以 ...
- git取消更改 恢复版本命令
#删除远程的xxx分支 git push origin :xxx #取消对文件的修改.还原到最近的版本,废弃本地做的修改. git checkout -- <file> #取消已经 ...
- Git学习一:基本用法
git config:配置相关信息 git clone:复制仓库 git init:初始化仓库 git add:添加更新内容到索引中 git diff:比较内容 git status:获取当前项目状况 ...
- Git学习之路(4)- 撤销操作、删除文件和恢复文件
▓▓▓▓▓▓ 大致介绍 经过前面的学习(小白学Git)已经建立了版本库,并上传了文件,这次来学习对这些文件进行基本的操作,即: ◆ 撤销操作 ◆ 删除文件 ◆ 恢复文件 我在此之前,已经将三个文件提交 ...
- Git 学习(四)操作修改和版本穿梭
Git 学习(四)操作修改和版本穿梭 之前的章节,已介绍了本地Git库创建.暂存区增.删.改,以及提交版本库:可回顾下命令操作: git add 和 git commit. 光有之前章节的操作,Git ...
- git 学习(3)文件删除恢复
git学习(3) 撤销编辑 如果我们在编辑版本a的时候,如果在没有add之前,发现需要重新编辑版本a怎么办呢,可以通过git reset --hard comm_id, commit_id是版本a的提 ...
随机推荐
- android.animation(3) - ValueAnimator-ofObject(TypeEvaluator evaluator, Object... values)
一.ofObject()概述 前面我们讲了ofInt()和ofFloat()来定义动画,但ofInt()只能传入Integer类型的值,而ofFloat()则只能传入Float类型的值.那如果我们需要 ...
- libxml2实例
// libxmlTest.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stdio.h> #includ ...
- struts2设置加载非默认路径的struts.xml文件解决方案
方案一: 首先我们要明白struts2加载配置文件都是从它自己的jar包和\WEB-INF\classes两个默认的位置加载的,如果你想改变strusts2中的文件的默认加载路径,可以在web项目 ...
- linux下编译 静态库、动态库,动态库依赖静态库
xx.o : xx.h xx.cpp -lstdc++ -o xx.o -c xx.cpp -I ./ libxx.a : xx.o ar -crv libxx.a xx.o libTest.so : ...
- 为女票写的计算工作时间的SQL(二)
将非工作时间.非工作日.节假日去掉,计算工作时间,如下: 一.实现 -- 节假日表 CREATE TABLE Holiday ( id ) NOT NULL, DATE ), flag ) , PRI ...
- lua工具库penlight--05日期和时间
创建和显示时间 Date类提过了简洁的使用date和time的方法.它依赖于os.date和os.time. Date对象可以通过table创建,如果os.date,同时提过了获取和设置date 成员 ...
- selenuim爬虫实战 (下)
SuperLOFTERDownloader7.java package test; import java.io.IOException; import java.util.ArrayList; im ...
- jquery获取的html元素和document获取的元素的区别
最近通过ocx做了一个视频插件,然后将插件放到html中(想知道的可以看一下) 因为我要操作这个插件,要播放,停止等,所以我需要获取这个元素,不出意外的,我就用jquery来获取,然后根本无法执行,然 ...
- windbg的使用
1. set 1.1. 设置Symbol file path file->symbol file path, 如: D:\***\TestProject\pdb 1.2 设置source ...
- 容斥 - HDU 4135 Co-prime
Co-prime Problem's Link: http://acm.hdu.edu.cn/showproblem.php?pid=4135 推荐: 容斥原理 Mean: 给你一个区间[l,r]和一 ...