区域介绍:
工作区 Working Directory: 就是当前目录,在目录中可看到的文件
版本库 Repository:当前目录内的.git文件,目录中看不到该文件
暂存区 stage : 存在于版本库中(.git文件中),git add后文件将在此区域存在
git add: 将文件修改添加到暂存区 index(stage)
git commit: 将暂存区的所有内容提交到当前分支
新添加文件的 status为 untrack,未跟踪的。使用git add 使其被跟踪
文件的三种状态:
- 已提交committed: 已提交表示数据已经安全的保存在本地数据库中。
- 已修改modified: 已修改表示修改了文件,但还没保存到数据库中。
- 已暂存staged: 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
分别对应:
Git仓库,工作目录,暂存区域
Git 仓库目录是 Git 用来保存项目的元数据和对象数据库的地方,这是Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据。
工作目录是对项目的某个版本独立提取出来的内容。 这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。 有时候也被称作“索引”,不过一般说法还是叫暂存区域。
基于Git的工作流程如下:
- 在工作目录中修改文件。 modified
- 暂存文件,将文件的快照放入暂存区域。git add
- 提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。git commit
如果 Git 目录中保存着的特定版本文件,就属于已提交状态。
如果作了修改并已放入暂存区域,就属于已暂存状态。
如果自上次取出后,作了修改但还没有放到暂存区域,就是已修改状态。