移除暂存区文件并从工作目录删除
例如,移除readme.txt
git rm -f readme.txt
这个操作相当于将文件从Git和磁盘删除。
仅将文件从暂存区移除,但是保留工作目录中的该文件
同样还是readme.txt文件,我们不想跟踪它,但是不小心用git add将它添加进了暂存区,此时可以使用下面的命令:
git rm --cached readme.txt
这将会使readme.txt文件变为untracked状态(无论它是否被提交过),但它仍在工作目录中(即不会从磁盘删除)。
使用git reset HEAD <file>来从暂存区移除。
使用这个命令移除暂存区的文件,要求这个文件必须是新增的,没有被提交过,这个命令不能对从仓库拉取的文件生效。
git reset HEAD test.txt
还有一个命令有相同的效果,但要注意使用时机。
git restore <file>
这个命令有2个作用:
1、当一个文件从没有被git跟踪过,首次add进入暂存区时,使用这个命令可以将这个文件移除暂存区。
2、如果是刚刚pull的仓库下的文件或者一个已经commit的文件,使用这个命令可以丢弃对这个文件的修改。