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

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. Android--自定义弹出框-自定义dialog

    项目要用到弹出框,还要和苹果的样式一样(Android真是没地位),所以就自己定义了一个,不是很像(主要是没图),但是也还可以. 废话不多说了,直接上代码 1.先看布局文件 <?xml vers ...

  2. Python笔记(五):异常处理和数据存储

    注:和上一篇有关联 (一)  finally 和 输出异常信息 try:       the_man = open(r'C:\Users\123456\Desktop\test.txt')       ...

  3. Oracle EBS INV 更新状态

    使用API改变现有物料状态,改成如下:On-Hand, Subinventory, Locator, Lot & Serial.参数使用如下:H, O, S, Z, L.对应如下: 'H' - ...

  4. 无法将数据库从SINGLE_USER模式切换回MULTI_USER模式(Error 5064),及查找SQL Server数据库中用户spid(非SQL Server系统spid)的方法

    今天公司SQL Server数据库无意间变为SINGLE_USER模式了,而且使用如下语句切换回MULTI_USER失败: ALTER DATABASE [MyDB] SET MULTI_USER W ...

  5. 根据进程ID查找运行程序目录

    查看进程ID [root@hadoop03 openresty]# netstat -nltp 进入/proc目录查找相应进程ID目录并进入此目录 [root@hadoop03 usr]# cd /p ...

  6. yaml格式

    yaml中允许表示三种格式,分别为常量值.对象和数组 例如: 其中#作为注释,yaml中只有行注释 基本格式要求: 1.大小写敏感:2.使用缩进代表层级关系: 3.缩进只能使用空格,不能使用tab键, ...

  7. cachecloud搭建.md

    Cachecloud github地址 https://github.com/sohutv/cachecloud 搭建环境 主机 IP Java 7 Maven 3 MySQL Redis 3 cac ...

  8. Netty入门(二)时间服务器及客户端

    在这个例子中,我在服务器和客户端连接被创立时发送一个消息,然后在客户端解析收到的消息并输出.并且,在这个项目中我使用 POJO 代替 ByteBuf 来作为传输对象. 一.服务器实现 1.  首先我们 ...

  9. ipv6导致的域名解析慢,nslookup,lvs,hosts.conf

    最近总是反应网站慢,先是查内网环境,又查机房网络环境,再查lvs配置,更查到xen开启导致的网络性能下降 更进一步的查到域名解析慢,最终发现ipv6的默认开启会导致域名解析慢: 而应用服务程序内部大多 ...

  10. JS编写简单的弹窗插件(含有demo和源码)

    最近项目做完了 事情不是很多,今天正好也在调休,所以趁着这个时间研究了一下简易的JS弹窗功能,当然网上这块插件非常多,本人也没有仔细看网上的插件源码 只是凭着日常使用过的弹窗插件有这么多功能 来实现自 ...