rm
意为删除文件,但是可以跟不同的参数来达到不同的效果。
场景
下午醒来,睡眼朦胧的你开始提交代码了,混混沌沌地使用了git add .
。
然后突然一个激灵,窝草,我得确认一下我add了啥东西,然后用了git status -s
简要看了一下要提交的东西。

发现已经add的文件中间华丽丽地有一个A_UNWANTED_FILE.md
。
不过还好,幸亏我没有commit并且直接push。

老板说过要保证代码库的纯洁性!!!
幸亏我知道这个命令:
git rm --cached FILE_NAME


如果不加
--cached
,会有以下结果:
会提示已经staged,不能删除。
另外提示中也给了另一个-f
选项,使用-f
会将文件从暂存区中删除,并且删除原文件。就像这样:

另外一个比较有意思的选项是-n
是--dry-run
的简写。大致是我删除之前先看看会删除哪些东西,并不会有实际的影响。
网友评论