GitHub入门与实践——Git的基本操作从初始化仓库到确认提交是否成功
Posted 可乐淘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitHub入门与实践——Git的基本操作从初始化仓库到确认提交是否成功相关的知识,希望对你有一定的参考价值。
一、git init ——初始化仓库
在本地建立一个目录,并初始化为仓库
$mkdir git-tutorial //在本地建立名为 git-tutorial 的目录
$cd git-tutorial //进入这个目录
$git init //把这个目录初始化为仓库
在Git中,这个目录的内容称为“附属于该仓库的工作树”。文件的编辑等操作都在工作树中进行,然后记录到仓库中,以此管理文件的历史快照。
如果想将文件恢复到原先的状态,可以从仓库中调取之前的快照,在工作树中打开。开发者可以通过这种方式获取以往的文件。
二、git status——查看仓库的状态
$git status //查看当前状态
如图,结果显示我们当前正处在master分支下,接着还显示了目前没有可提交的内容。
所谓”提交(commit)“是指”记录工作书中所有文件的当前状态“。没有可提交的内容,就是说当前我们建立的这个仓库中还没有记录任何文件的任何状态。
下面,我们建立 README.md文件作为管理对象,为第一次提交做前期准备。
$touch README.md //新建READE.md文件
$git status //查看仓库状态
可以看到在Utracked files中显示了README.md文件,类似地,只要对Git的工作树或仓库进行了操作,git status命令的显示结果就会发生变化。
现在只是用Git仓库的工作树创建了文件,那么该文件并不会被记入Git仓库的版本管理对象当中,因此我们用 git status 命令查看README.md文件时,它会显示在Untracked files里
三、git add——向缓存区中添加文件
要想让文件成为Git仓库的管理对象,就需要用git add命令将其加入暂存区(Stage或者Index)中。暂存区是提交之前的一个临时区域。
$git add README.md //把README.md文件添加到缓存区
$git status //查看仓库状态
如上图所示,将README.md加入暂存区后,git status命令的显示结果发生了变化,README.md文件显示在 Change to be commited中了。
四、git commit——保存仓库的历史记录
git commit 命令可以将当前暂存区中的文件实际保存到仓库的历史记录中,通过这些记录,我们就可以在工作树中复原文件了。
1、记述一行提交信息
$git commit -m "First commit" // -m 后的参数 "First commit"是提交信息,是对这个提交的描述
2、记述详细提交信息
$git commit //回车后,可启动vim编辑器,在编辑器中可输入详细描述
3、中止提交
如果想在编辑器启动后中止,把提交信息留空并直接关闭编辑器即可
4、查看提交后的状态
五、git log——查看提交日志
1、$git log //查看本仓库的提交日志
如图所示,屏幕显示了刚刚的提交操作,commit右侧的384……e2b是指向这个提交的哈希值。
2、$git log --pretty=short //只显示提交信息的第一行
3、$git log README.md //显示指定目录、文件的日志
4、$git log -p README.md //显示文件的改动,可查看文件的提交日志和提交前后的差别
六、git diff——查看更改前后的差别
向README.md中写点东西,如:#Git Teaching
$git diff //查看工作树和暂存区的差别
$git add READEME.md //把READEME.md文件加入暂存区
$git diff head //查看暂存区和最新提交的差别
以后我们要养成一个好习惯,每次commit之前都通过git diff head 命令查看本次提交与上次提交有什么区别。
$git commit -m "Second commit" //由于刚才确认过了两个提交之间的差别,直接提交
$git log //保险起见,我们查看一下提交日志,确认提交是否成功
日志显示第二次提交成功。
以上是关于GitHub入门与实践——Git的基本操作从初始化仓库到确认提交是否成功的主要内容,如果未能解决你的问题,请参考以下文章
GitHub入门与实践——初始设置Git,以及在GitHub中添加公开密钥
GitHub入门与实践——初始设置Git,以及在GitHub中添加公开密钥
《Github入门与实践》读书笔记 蟲咋先生的追求之旅(上)
GitHub入门与实践——初步体验Git与GitHub的联动