git文件有三种状态:1、已提交状态(committed),表示数据已经安全的保存在本地数据库中;2、已修改状态(modified),表示修改了文件,但是还没有保存到数据库中;3、已暂存状态(staged),表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
本文操作环境:Windows10系统、Git2.30.0版、Dell G3电脑。
git文件有哪几种状态
git的文件状态有三种:
针对Git 文件的三种状态,这里需要了解Git项目的三个工作区域:工作区、暂存区和Git仓库。
知识扩展:
基本的Git工作流程描述如下:
-
在工作区中修改某些文件。
-
对修改后的文件进行快照,然后添加到暂存区。
-
提交更新,将保存在暂存区域的文件快照永久转储到 Git 仓库中。
GIt在提交之前,存在3种状态:Untracked files(未被追踪、监测)、Changes not staged for commit、Changes to be committed。这三种状态可以任意转换。
Untracked files:标记文件还没有被git监测、管理,这时可以使用git add命令将提示为Untracked files的文件添加到git仓库。
Changes to be committed:提示为该种状态的文件,已经在暂存区生成了快照,等待被提交。这时可以使用git commit -m "注释"来提交文件。
这个时候,也可以通过 git rm –cached 文件名 命令,将文件状态还原为Untracked状态。
在Changes to be committed状态中的文件,可以被提交,也可以继续修改。
Changes not staged for commit:在Changes to be committed状态的文件没有commit而继续修改后,通过git status 查看,就有了Changes not staged for commit状态。这个状态表示文件已经被修改,但是没有放入暂存区域,还没有生成快照。这个时候可以进行2个操作,commit和add操作。
如果进行了commit操作,则只是将修改之前的文件提交到了git版本目录(只有暂存区域的文件,状态为Changes to be committed的文件,才能被提交);如果需要将修改后的文件也提交,则需要使用git add命令,将文件添加文件到暂存区域。如果想要撤销修改,则使用:git checkout –文件名。
推荐学习:《Git教程》