git-初始学习摘录01
来源:互联网 发布:尤克里里调音软件G 编辑:程序博客网 时间:2024/06/08 04:29
2.2暂存区
1、此命令可以用来查看提交日志,用来查看统计变更。
$ cd /path/to/my/workspace/demo$ git log --stat2、变更不能直接提交
创建welcom.txt
$ echo "Nice to meet you." >> welcome.txt
进行提交
$ git commit -m "Append a nice line."结果:失败
原因分析:
执行git status-s命令,发现m处于第二列,此时状态为,工作区中文件处于中间状态。
$ git status -s M welcome.txt需要执行git add命令
$ git add welcome.txt
接着执行git status-s发现m处于第一列,则代表文件提交缓存区,版本库中的文件处于中间状态
$ git status -sM welcome.txtgit commit命令进行提交,即可提交成功
3、 理解git暂存区概念
通过下列命令比较index时间轴,可以说明暂存区工作原理
ls --full-time .git/index
$ touch welcome.txt$ git status -s # 执行 git diff ,如果 git 版本号小于 1.7.3$ ls --full-time .git/index因为判断文件是否更改,使用时间戳、文件长度等信息进行比较要比通过文件内容比较要快的多,所以Git这样的实现方式可以让工作区状态扫描更快速的执行,这也是Git高效的因素之一。
暂存区、工作区、版本库之间的常见操作命令
- 当执行git reset HEAD命令时,暂存区的目录树会被重写,被master分支指向的目录树所替换,但是工作区不受影响。
- 当执行git rm –cached <file>命令时,会直接从暂存区删除文件,工作区则不做出改变。
- 当执行git checkout .或者git checkout – <file>命令时,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。
- 当执行git checkout HEAD .或者git checkout HEAD <file>命令时,会用HEAD指向的master分支中的全部或者部分文件替换暂存区和以及工作区中的文件。这个命令也是极具危险性的,因为不但会清除工作区中未提交的改动,也会清除暂存区中未提交的改动。
0 0
- git-初始学习摘录01
- Git 学习初始篇
- 学习摘录
- 学习初始
- git log摘录
- Git初始配置
- git submodule 初始更新
- Git本地初始配置
- git初始用
- git的初始设置
- git版本控制初始
- Git 初始设置
- QML学习摘录 01:初识QML
- 初始git遇到的问题
- DLL学习摘录
- DLL学习摘录2
- DLL学习摘录3
- DLL学习摘录4
- Mapping toolbox绘制地理栅格数据
- Java学习之Iterator(迭代器)的一般用法 (转)
- 【HDU5867】Water problem(模拟)
- 每天进步一点点——五分钟理解一致性哈希算法(consistent hashing)
- Android在中国的繁荣并没有给Google带来任何好处
- git-初始学习摘录01
- 【Poj】-2299-Ultra-QuickSort(树状数组,离散化, 好)
- github上关于iOS的各种开源项目集合(转)
- bat脚本10_将2个文本文件中的对应行合并
- 图结构练习——最短路径
- 懒人库--ButterKnife
- Class类文件的结构
- UITableViewCell右边只有一个打勾
- Oracle控制结构