记录摘选自廖雪峰的官方网站归纳总结

1.centos下安装git
[root@cdw-lj ~]# yum install git
2.配置用户名以及邮箱
[root@cdw-lj opt]# git config --global user.name "daiwei.chen"
[root@cdw-lj opt]# git config --global user.emai "daiwei.chen0724@gmail.com"
3.创建版本库
[root@cdw-lj ~]# mkdir -pv /opt/learngit/         #创建一个空目录做版本目录
[root@cdw-lj ~]# cd /opt/learngit/
[root@cdw-lj learngit]# git init #初始化
Initialized empty Git repository in /opt/learngit/.git/
[root@cdw-lj learngit]# ls -ah #查看当前目录发现多了一个隐藏的.git目录;
. .. .git
4.在此目录下新建文件,并将其添加到git仓库并提交。
[root@cdw-lj ~]# echo 'Git is a version control system.
> Git is free software.' > /opt/learngit/readme.txt #添加两行文本到readme.txt文件中
[root@cdw-lj ~]# cat /opt/learngit/readme.txt #查看文件内容
Git is a version control system.
Git is free software. [root@cdw-lj learngit]# git add readme.txt #添加文件到仓库,运行没显示表示添加成功
[root@cdw-lj learngit]# git commit -m "wrote a readme file" #提交文件到仓库,-m参数后输入的是本次提交的说明,类似于备注
[master (root-commit) 528fa8b] wrote a readme file
1 file changed, 2 insertions(+)
create mode 100644 readme.txt [root@cdw-lj learngit]# git status #查看git仓库状态,因文件已经提交至仓库,所以为clean状态
# On branch master
nothing to commit, working directory clean
5.修改文件内容,添加并提交
[root@cdw-lj learngit]# cat readme.txt                      #第一次将文件改成此内容,修改后可通过“git diff 文件名”命令查看文件区别
Git is a distributed version control system.
Git is free software.
[root@cdw-lj learngit]# git add readme.txt #将修改后的文件添加至仓库
[root@cdw-lj learngit]# git commit -m "add distributed" #将修改提交 [root@cdw-lj learngit]# cat readme.txt #第二次将文件改成此内容。
Git is a distributed version control system.
Git is free software distributed under the GPL.
[root@cdw-lj learngit]# git add readme.txt #将修改后的文件添加至仓库
[root@cdw-lj learngit]# git commit -m "append GPL" #将修改提交
6.历史版本查询
#在之前readme.txt经历了三个版本,并分别做了标记"wrote a readme file" "add distributed" "append GPL"
[root@cdw-lj learngit]# git log #git log命令显示从最近到最远的提交日志,我们可以看到3次提交,最近的一次是append GPL,上一次是add distributed,最早的一次是wrote a readme file。
commit 2d703b1dcd88b560610e550450cf2d78fcfc7064
Author: daiwei.chen <daiwei.chen0724@gmail.com>
Date: Wed Jan 2 14:56:55 2019 +0800 append GPL commit eaa640ba686f09cc0687fa8691df119351dd184d
Author: daiwei.chen <daiwei.chen0724@gmail.com>
Date: Wed Jan 2 14:42:22 2019 +0800 add distributed commit 528fa8b827056289734022d8fd51379b03df53cb
Author: daiwei.chen <daiwei.chen0724@gmail.com>
Date: Wed Jan 2 14:27:04 2019 +0800 wrote a readme file
[root@cdw-lj learngit]# git log --pretty=oneline #如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:显示的结果为commit ID 和提交说明
2d703b1dcd88b560610e550450cf2d78fcfc7064 append GPL
eaa640ba686f09cc0687fa8691df119351dd184d add distributed
528fa8b827056289734022d8fd51379b03df53cb wrote a readme file
7.版本回退
[root@cdw-lj learngit]# git reset --hard HEAD^        #在Git中,用HEAD表示当前版本,也就是最新的提交2d703b...(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^
HEAD is now at eaa640b add distributed
#通过以上命令已经从当前版本“append GPL”回退到上一个版本“add distributed”。 HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

GIT命令基本使用的更多相关文章

  1. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  2. 工作中常用的git命令

    一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...

  3. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  4. 常look的Git命令

    常用的Git命令   命令  简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply   应用补丁 git am  应用邮件格式补丁 git a ...

  5. ***Linux下使用git命令及github项目

    在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen  ##一直默认就可以了 3.将公钥加入到Github账户 ...

  6. 我所记录的git命令(非常实用)

    一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...

  7. GIT命令行的使用

    新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...

  8. 简明 Git 命令速查表(中文版)

    原文引用地址:https://github.com/flyhigher139/Git-Cheat-Sheet/blob/master/Git%20Cheat%20Sheet-Zh.md在Github上 ...

  9. 常用 Git 命令清单 转

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  10. 日常开发使用GIT命令

    git是一种分布式的版本管理工具,现在我总结下日常使用的git命令 1)检出 git clone 地址 --检出代码 #这里的地址是代码池的地址,如Github或bitbucket 2)增加文件 gi ...

随机推荐

  1. Expo大作战(二十)--expo中的Release channels(不重要*)

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  2. CSS样式----CSS属性:字体属性和文本属性(图文详解)

    本文最初于2015-10-04发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 本文重要内容 CSS的单位 字体属性 文本属性 定 ...

  3. python 之__new__

    注意: 继承自object的新式类才有__new__方法 类中的__init__方法依赖__new__方法的正确返回,init中的self就是__new__返回的实例 __new__至少要有一个参数c ...

  4. centos7安装mysql5.7修改设置密码策略

    centos7操作系统在安装mysql5.7社区版之后会有默认密码,通过grep命令在mysqld.log文件中即可找到,如下所示: 标识位置即在初始化安装时mysql的默认密码,然后通过mysql ...

  5. 转:Newtonsoft.Json高级用法

    原文地址:http://www.cnblogs.com/yanweidie/p/4605212.html 手机端应用讲究速度快,体验好.刚好手头上的一个项目服务端接口有性能问题,需要进行优化.在接口多 ...

  6. 天河2号-保持使用yhrun/srun时连接不中断 (screen 命令教程 )

    问题重述: 当我们使用天河机进行并行程序实验的时候,都会使用到yhrun/srun命令.在超算环境下,yhrun 命令用来进行提交交互式作业,有屏幕输出.但是容易受到网络波动影响导致断网或者关闭窗口最 ...

  7. Eclipse无法自动编译生成class文件

    在Maven项目中,通常eclipse生成的class文件都会在target/classes文件夹下,但是有时候由于各种原因,classes下没有生成class文件,导致项目启动失败 . 大部分cla ...

  8. 张高兴的 .NET Core IoT 入门指南:(一)环境配置、Blink、部署

    如何在 Raspberry Pi 的 Raspbian 上构建使用 GPIO 引脚的 IoT 程序?你可能会回答使用 C++ 或 Python 去访问 Raspberry Pi 的引脚.现在,C# 程 ...

  9. Spring IOC容器创建bean过程浅析

    1. 背景 Spring框架本身非常庞大,源码阅读可以从Spring IOC容器的实现开始一点点了解.然而即便是IOC容器,代码仍然是非常多,短时间内全部精读完并不现实 本文分析比较浅,而完整的IOC ...

  10. [转]vue全面介绍--全家桶、项目实例

    慢慢了解vue及其全家桶的过程 原文http://blog.csdn.net/zhenghao35791/article/details/67639415 简介 “简单却不失优雅,小巧而不乏大匠”.  ...