Git中三种文件状态及其转换
来源:互联网 发布:如何防范电信网络诈骗 编辑:程序博客网 时间:2024/04/30 03:48
Git作为一种版本控制解决方案,由于其具有的分布式特性,正被越来越多的用户熟知,一些有名的开源项目,如:Linux kernel,CakePHP,Ruby on Rails等,都在使用Git进行版本管理。
在Git中,文件状态是一个非常重要的概念,不同的状态对应不同的操作。因此,要想熟练掌握Git的用法,需要了解Git的几种文件状态。
为了说明的方便,现在初始化一个项目,也就是将项目所在目录纳入Git的管理之下。假设项目目录为hello_world,初始化之后,在目录下新建README.txt文件,接着,使用“git status”查看文件状态,如图:
可以看到,Git友好的标示出README.txt为“Untracked files”,并且提示使用“git add
文件README.txt状态变成了“Changes to be committed”,也就是说README.txt在暂存区域生成了快照,等待被提交。正如Git所提示的那样,通过“git rm --cached README.txt”命令,可以将文件状态还原为未暂存状态,即回到“Untracked files”文件状态。现在,README.txt已经可以被提交到git目录中了,但是暂时不提交。打开README.txt,向其中加些内容,保存之后,用“git status”查看,返回如图信息:
可以看到,除了之前的“Changes to be committed”状态,现在又多了一条“Changes not staged for commit”状态,表明文件已经修改,但是还没有放入暂存区域,也就是没生成快照。如果现在进行commit操作,只是将修改之前的文件快照提交到了git目录,一定记住:只有暂存区域的文件(即:文件状态为“Changes to be committed”)才会被提交。正如提示,通过“git add README.txt”命令将已修改文件更新到暂存区域中,如果想撤销修改,可以使用“git checkout -- README.txt”命令。
正如上文所说,Git在未进行commit操作之前,存在三种状态:Untracked files,Changes not staged for commit及Changes to be committed,每种状态之间可以随意进行互相转换。了解这三种状态各自所对应的不同情况,能够帮助你方便有效的使用Git来管理项目。
(完)
上一篇:git 设置编辑器
下一篇:git 不输密码
- linux 流媒体
- Win7上Git安装及配置过程...
- 软件推荐┊奇迹英语智能记忆 5...
- 中望CAD 2008专业版破解...
- 07 Git 移动、删除文件
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换
- Git中三种文件状态及其转换(转)
- git文件状态转换
- 线程状态及其转换
- 线程状态及其转换
- Git的状态转换
- Git 文件状态
- Git文件状态
- Git文件状态
- hibernate对象三种状态及其转换
- 进程的基本状态及其转换
- 进程的基本状态及其转换
- 进程的基本状态及其转换
- 现在不写个博客都不好意思去找工作了
- inner class
- win7环境下MinGW+eclipse cdt开发配置
- git 设置编辑器
- malloc的底层实现
- Git中三种文件状态及其转换
- 如何优化JAVA代码及提高执行效率
- C语言内存学习
- rndis ethernet gadget 驱动 安装方法
- 彩虹倒计时
- git 不输密码
- GIT 不需要密码
- 【学习笔记javascript设计模式与开发实践(命令模式)----9】
- java静态代理和动态代理