GIT命令基本使用
记录摘选自廖雪峰的官方网站归纳总结
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命令基本使用的更多相关文章
- Git初探--笔记整理和Git命令详解
几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...
- 工作中常用的git命令
一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...
- 常用 Git 命令清单
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- 常look的Git命令
常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git a ...
- ***Linux下使用git命令及github项目
在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen ##一直默认就可以了 3.将公钥加入到Github账户 ...
- 我所记录的git命令(非常实用)
一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...
- GIT命令行的使用
新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...
- 简明 Git 命令速查表(中文版)
原文引用地址:https://github.com/flyhigher139/Git-Cheat-Sheet/blob/master/Git%20Cheat%20Sheet-Zh.md在Github上 ...
- 常用 Git 命令清单 转
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- 日常开发使用GIT命令
git是一种分布式的版本管理工具,现在我总结下日常使用的git命令 1)检出 git clone 地址 --检出代码 #这里的地址是代码池的地址,如Github或bitbucket 2)增加文件 gi ...
随机推荐
- [Android] Activity间切换,传递数据
前面照着android系统的裁剪图片的功能自己写了一个相似的工具.功能是大体上实现了,但留下了一个调用的问题:如何从我的程序调用这个裁剪工具,并且获得裁剪后的图片呢? 其实这个也很简单了,就是inte ...
- CSS盒模型详解(图文教程)
本文最初发表于博客园,并在GitHub上持续更新.以下是正文. 盒子模型 前言 盒子模型,英文即box model.无论是div.span.还是a都是盒子. 但是,图片.表单元素一律看作是文本,它们并 ...
- Git删除文件
Git基础 Git有三大区(工作区.暂存区.版本库),文件有三个状态(untracked.unstaged.uncommited). (1)打开项目文件夹,除了隐藏的.git文件夹,其他项目文件位于的 ...
- Linux 同步时间 设置时区
简化版 同步时间 #直接用域名同步中国上海时间 ntpdate -u ntp.api.bz # hwclock --hctosys 或者 # clock --hctosys hc代表硬件时间,sys代 ...
- 三种方法实现java调用Restful接口
1,基本介绍 Restful接口的调用,前端一般使用ajax调用,后端可以使用的方法比较多, 本次介绍三种: 1.HttpURLConnection实现 2.HttpClient实现 3.Spring ...
- SQL删除指定条件的重复数据,只保留一条
BEGIN DELETE TB FROM TableName TB WHERE TB.ID IN (SELECT MIN(ID) FROM TableName TB2 GROUP BY TB2.Col ...
- centos 7 linux x64
1.修改软件源 sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo yum updat ...
- 0基础的人如何入门 Python ?Python难么?
人生苦短,我用Python,为啥这么说,因为我们自动化测试有金句:学完Python,便可上天 ~ 废话不多说,相信很多人都听过之前的Python进入小学课本.Python进入浙江省高考等新闻,有这么多 ...
- 软件架构方面基础-ESB \SOA \GEO-ESB
学习初稿 软件架构演变历史 SOA (Service-Oriented Architecture)面向服务的体系结构 它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起 ...
- eclipse能正常启动tomcat,但是网页访问不了
参考网址https://blog.csdn.net/did_itmyway/article/details/62099930