版本回退

将远程仓库抽取到本地:前面提到了两种方式,(1)git pull (2)git fetch  + git merge的命令。
当我们发现修改过并提交过的程序不合理时,我们想恢复到以前的版本,这里就用到了版本回退的命令。
git reset --hard HEAD^        //(回退到上一个版本,另个尖括号代表回退到倒数第三个版本,以此类推)
git reset --hard HEAD~数字    //可以实现前一条命令相同的结果

首先因为本地上有老版本的工程(第二版吧),所以可以利用前面的博客介绍文件抽取的方法,将github上最新版本的程序利用git pull等命令抽取到本地。

然后运行一些该工程文件,发现输出的三个数字中间没有换行,是连起来输出的,所以是不合理的,需要将该程序做一些修改。然后将修改后的版本推送到远程仓库。然后利用利用上面的命令测试回退的功能,(其中将修改后的程序推送github如下)
然后用git log命令查看版本日志,寻找需要回退到的版本位置:
从图中可以看到每个版本的提交的时间。由于无用的信息太多,可以用git log --pretty=oneline来输出信息的第一行。
每行代码的最前黄色的部分是做过编码的commitID。
我们假设需要将我们的项目回退到第一次修改的状态(修改程序,输入一个数字):需要使用git reset命令:
工作区的版本指向的版本会退到了倒数第四个版本(7c2eb70是commitID的前七位),打开工程文件夹,发现确实回到了输入一个数字的程序。
如果想把目前版本的程序回退(其实是指向未来)后面的版本库,比如说(输入三个数)的版本,就不能使用git reset --hard HEAD^的指令
。需要使用git reset --hard commitID指令。
git reflog 命令可以查看所有本地版本库的提交和回退记录(PS:git log是查看远端github上的提交记录的,所以git reflog记录更全):

【Git/Github学习笔记】Git常用命令(版本回退)相关推荐

  1. git/github学习笔记

    原文地址为: git/github学习笔记 请移步到:http://www.testclass.net/git/ ----- 我重新对git/github教程进行了编排和整理. 1. git 版本控制 ...

  2. Git学习笔记:常用命令总结

    本文根据廖雪峰的博客,记录下自己的学习笔记.主要记录常用的命令,包括仓库初始化.添加文件.提交修改.新建分支.内容暂存.分支管理.标签管理等内容. git是分布式版本控制系统. 首先是安装,从官网下载 ...

  3. Git Github学习笔记

    Git && Github 一.本地库操作命令 本地初始化 git init # 选择一个目录进入 helin9s@LAPTOP-M719A9K6 MINGW64 /d/DEVELOP ...

  4. NodeJs学习笔记002--npm常用命令详解

    npm 常用命令详解 npm是什么 npm install 安装模块 npm uninstall 卸载模块 npm update 更新模块 npm outdated 检查模块是否已经过时 npm ls ...

  5. Docker学习笔记之常用命令

    背景 整理一下常用的Docker命令 常用命令 帮助命令 1.查看版本 $ docker versionClient: Version: 18.03.0-ce API version: 1.37 Go ...

  6. Linux 学习笔记2 常用命令

    Linux 学习笔记1 安装linux详细教程_O丶ne丨柒夜的博客-CSDN博客 Linux_目录结构 基本介绍 1.liux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录&quo ...

  7. matlab学习笔记之常用命令(一)

    一.清除命令. 1.clear all:%清除所有变量,通常在matlab的工作区:另外断点也会被清除掉 2.close all:%关闭所有窗口(除了编辑器窗口.命令窗口.帮助窗口) 3.clc;%清 ...

  8. Hadoop学习笔记——Hadoop常用命令

    Hadoop下有一些常用的命令,通过这些命令可以很方便操作Hadoop上的文件. 1.查看指定目录下的内容 语法: hadoop fs -ls 文件目录 2.打开某个已存在的文件 语法: hadoop ...

  9. 大数据学习笔记——linux常用命令整理

    1.常用操作 查看当前目录下的所有文件及目录 ls/ll 进入目录 cd 查看当前目录 pwd 结束当前进程 ctrl+c/ctrl+z   ctrl + z可以将一个正在前台执行的命令放到后台,并且 ...

  10. [Linux学习笔记] Linux常用命令 - 文件搜索命令

    2019独角兽企业重金招聘Python工程师标准>>> 文件搜索命令 1. 显示系统命令所在目录: which 命令名称: which 命令所在路径: /usr/bin/which ...

最新文章

  1. PHP利用Gearman来处理并行多进程问题
  2. VS2010单元测试入门实践教程
  3. logstash入门
  4. 计算机视觉与深度学习 | Matlab实现单目视觉里程计基于SURF特征(代码类)
  5. 思科和华为路由器OSPF之对比学习
  6. java 获取本机的IP和hostname
  7. 【印刷数字识别】基于matlab OCR识别系统【含Matlab源码 438期】
  8. iOS 仿微信朋友圈实现
  9. 关于Android Pie(Android 9.0),你想知道的都在这了
  10. 中国多媒体与网络教学学报杂志中国多媒体与网络教学学报杂志社中国多媒体与网络教学学报编辑部2022年第6期目录
  11. 列的完整性约束——设置表字段的外键约束(FOREIGN KEY,FK)
  12. OHIF记录(二)——Viewers和React-vtk工具包互联
  13. Mobile按键对照表
  14. 模糊神经网络:基于模糊神经网络(Fuzzy Neural Networks,FNN)的数据分类(提供MATLAB代码)
  15. 在我的世界中用 python 编程
  16. 医院his系统什么服务器,医院营养餐微信订餐系统
  17. [Shader]对NGUI的UISprite和UITexture进行裁剪
  18. 奶牛乘法c语言数组,C++程序题,奶牛问题
  19. HDU-2085(核反应堆)
  20. 本题要求实现一个函数,将非负整数n转换为二进制后输出。

热门文章

  1. 导出DataTable数据到Word或者Excel
  2. DIV+CSS的好处和意义
  3. 12. Copy all parts of an object
  4. SpringCloud实战(四)Sentinel自定义降级异常实战
  5. python自定义规律绘制_ForMaiR - 自定义规则的邮件自动转发工具
  6. 素数就是不能再进行等分的数。比如2,3,5,7,11,等 9=3*3说明它可以等分,因而不是素数 我们国家在1949年建国,如果只给你 1 9 4 9 这4个数字卡片, 可以随意摆放他们的先后顺序(但
  7. 切片与MapTask并行度决定机制
  8. m_map投影_MATLAB——m_map指南(1)
  9. Ubuntu编译:error: ‘usleep’ was not declared in this scope
  10. shell脚本编写_shell脚本编写事例(dhcp自动安装和自动配置)