git 基础

请记住,工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪

已跟踪的文件是指本来就被纳入版本控制管理的文件,它们的状态可能是未更新,已修改或者已放入暂存区

而所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。

初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改

在编辑过某些文件之后,Git 将这些文件标为已修改。我们逐步把这些修改过的文件放到暂存区域,直到最后一次性提交所有这些暂存起来的文件,如此重复。所以使用 Git 时的文件状态变化周期如图 2-1 所示

File Status LifeCycle.png
检查当前文件状态

现在让我们用 vim 创建一个新文件 README,保存退出后运行 git status
会看到该文件出现在未跟踪文件列表中:

untrancked files.png
在状态报告中可以看到新建的README文件出现在“Untracked files”下面

Git 不会自动将之纳入跟踪范围

如何跟踪未纳入其跟踪范围的该文件
使用命令 git add开始跟踪一个新文件。

所以,要跟踪 README 文件,运行:

$ git add README

此时再运行 git status
命令,会看到 README 文件已被跟踪,并处于暂存状态:

$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# new file: README 
#
只要在 “Changes to be committed” 这行下面的,就说明是已暂存状态
其实 git add的潜台词就是把目标文件快照放入暂存区域,也就是 add file into staged area,同时未曾跟踪过的文件标记为需要跟踪。这样就好理解后续 add 操作的实际意义了。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容