第二天git学习记录
2016-02-19 17:25
288 查看
工作区(Working Directory)
就是你在电脑里能看到的目录,放你所有的文件需要版本控制的版本库(Repository)
工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
git diff HEAD – file
查看工作区和版本库里面最新版本的区别git checkout – file
把工作区的修改全部撤销,这里有两种情况:一种是文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit或git add时的状态。
git reset HEAD file
把暂存区的修改撤销掉(unstage),重新放回工作区git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
小结
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
相关文章推荐
- (WIP)C语言知识回顾(by quqi99)
- Andorid中的HAL
- 通用工具类方法
- Android右菜单回弹效果(最简)
- 解决OracleRAC集群下创建SDE时报Stored procedures错误问题
- colorAccent,colorPrimary,colorPrimaryDark……来这里你就明白了
- Android Volley完全解析(二),使用Volley加载网络图片
- android 成长日记 2.Activity的生命周期
- Python程序员必知必会的开发者工具
- rsync增量重置备库
- 大数多进制转换
- CXF spring jaxws:endpoint jaxws:server 区别 与 关系
- 网络爬虫之get方法
- Masonry常见错误
- iOS 52个技巧学习心得笔记 第二章 对象 , 消息, 运行期
- MySql命令
- php采集神器cURL使用方法详解
- Lucene搭建和基本使用
- maven常用命令介绍
- 用robotframework + selenium2library做自动化测试遇到的一些问题,及解决方法。