软件世界网 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
  软件世界网 -> 开发杂谈 -> Git命令学习之旅——日志和穿梭版本 -> 正文阅读

[开发杂谈]Git命令学习之旅——日志和穿梭版本


在总结了git命令的基础之后,接下来我们看一下基础的一些进阶内容:删除撤销命令,日志查看命令等
既然有添加文件的功能,那么相对应的肯定有移除文件的功能,命令如下:git rm 【文件名】
在输入命令之后,如下图所示:
[img]http://img.blog.csdn.net/20160331154509878?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
提示已经删除了“c.txt”文件,这个时候再用git status查看一下状态,如下图:
[img]http://img.blog.csdn.net/20160331154629925?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
接下来的操作就和正常的添加操作一样了,commit到分支,最后push到远程库(可以点击Git命令学习之旅——基础操作查看)
如果我们已经将文件修改了之后添加到了暂存区,但是突然不想要了,不想提交和推送了,我们应该怎么办?
可能有的读者已经发现了,刚刚的删除c.txt时,系统已经给出了提示
输入命令:git reset HEAD 【文件名】             即可将本来已经保存到暂存区中的文件删除
但是git命令更为强大的一点在于,不仅仅可以将你在add之后保存在暂存区的文件删除,还可以将你在工作区内修改的内容删除,恢复到最开始的样子
如下图,我们已经对a.txt文件进行了修改,然后查看一下现在的状态:
[img]http://img.blog.csdn.net/20160331160121978?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
同样的根据系统给出的提示,此时有两种选择,第一个就是add到暂存区,第二个就是丢弃对工作区的改动
输入命令:git checkout 【文件名】                   即可删除已经对文件进行的操作
在有这个功能的保障下,任何人对你的文件内容进行了修改,你都可以直接丢弃,不用再担心自己的文件被修改了
可是如果是自己对文件进行了修改,却记不起来到底对文件的什么地方进行了修改,我们应该怎么办呢?
这里我们需要引入另外的一个命令:git diff 【文件名】       注:如果不加文件名,默认输出所有的不同点
通过diff命令我们就可以查看自己修改了文件的哪些地方了,如下图:
[img]http://img.blog.csdn.net/20160331161255044?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
可以看到我们新添加了一行”hello git!!“
这个命令就是将你最新修改后的文件和你原来的文件进行比较,找出不同的地方(文件也可以是已经存放在暂存区的文件,甚至是提交到分支的文件)
说到提交到分支的文件(也就是commit 之后的文件),我们如果查看它的状态,系统只会返回下图:
[img]http://img.blog.csdn.net/20160331165826078?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
我们应该如何查看自己commit是不是我们想push的呢?
输入命令:git commit --amend
我们就会进入到文本编辑器中查看这次的commit信息(我的是vim)如下图:
[img]http://img.blog.csdn.net/20160331170013610?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
通过编辑器确定没有问题之后,就可以push了
在日常生活工作中,除了添加、删除这些操作以外,我们最为常用的还有重命名
输入命令:git mv 【原文件名】 【新文件名】              其实和linux系统内的重命名方式一样
执行之后,可以通过ls命令查看文件名有没有改变,当然最简单的还是使用git status查看,如下图:
[img]http://img.blog.csdn.net/20160331162043266?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
可以发现我们将”a.txt“重命名为了”ab.txt“
现在,本地上任何的改变我们都可以产看并且解决了,接下来就是对push操作的查看了
输入命令:git log              可以查看最近push的日志,如下图:
[img]http://img.blog.csdn.net/20160331163427865?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
我们可以查看到刚刚我们对a.txt重命名的提交报告,可以清楚的看到时间和作者(刚刚重命名的操作必须要push之后才可以看得到)
如果我们觉得这个样子并不详细,我们像看一下具体干了什么怎么办呢?
输入命令:git log --stat    
[img]http://img.blog.csdn.net/20160331163737695?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
这样就可以看到a.txt 文件被删除,而ab.txt文件被添加了
这里的截图只是截下来了我们刚刚push的最后一个操作的log,其实默认会显示好几个
我们也可以通过参数设定来自主控制log的显示个数
输入命令:git log -p -【想要显示log的个数】
[img]http://img.blog.csdn.net/20160331164215431?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
这里是输入:git log -p -2 后的截图,可以发现显示的非常全面,甚至包括文件里面内容的改变都可以显示出来
但是有的时候我们并没有那么多时间来仔细查看那么多的日志,我们只需要查看一下提交的信息就好了,我们应该怎么做呢?
输入命令:git log --pretty=oneline
[img]http://img.blog.csdn.net/20160331164717620?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
可以看到,这样就可以快速的查看到最近的提交日志
对于日志的查看,这里只能简单说这么多了,剩下还有很多操作来使得我们方便查阅日志,可以输入git log --help进行查看
那么我们查看了日志有什么用呢?
这个用处当然多了,除了大家都知道那些之外,git还有了版本穿梭的能力
如刚刚看到的,输入:git log --prett=oneline 之后我们可以看到许多的日志
后面是提交的提示信息,那么前面是什么呢?
前面就是我们的版本号了,接下来就是将这些版本号利用起来的时候了
输入命令:git reset --hard 【版本号】           这里不需要完全输入,输入前6位一般就可以了
[img]http://img.blog.csdn.net/20160331171606631?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
然后你就可以得到这样一则回复,显示你已经回到了刚刚你输入版本号的那个版本了,你本地的所有内容都恢复到了那个版本
同样的,你的日志记录也回到了刚刚那个版本里面,那么我们如果想要回来需要怎么做呢?
输入命令:git reflog
[img]http://img.blog.csdn.net/20160331172107477?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
这样我们就可以看到所有的版本号了,那么我们想要回到哪个版本直接输入相对应的版本号就可以了,是不是很有趣呢?
我们可以通过这个部分总结的命令,使得我们日常的生活更加有条理,不会对自己到底做了什么都不知道
......显示全文...
    点击查看全文


上一篇文章      下一篇文章      查看所有文章
2016-04-02 21:01:37  
开发杂谈 最新文章
BloomFilter
大学四年编程之历程
内核分析
造人论坛——意识的本质和一个人工脑模型
OFDM信号[matlab描述]
人类还会进化吗?
HDUACM1035RobotMotion简单模拟题
树、二叉树(二)
iisphpweb.config处理404,500等,跳转友好
DatabaseAsaFortress
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年1日历
2018-1-20 7:31:46
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  软件世界网 --