我正在学习 Git,无法理解在发出“git rm”命令时在什么情况下使用 -f 标志。请解释一个需要 rm -f 而不是 rm 的场景?
问问题
18520 次
3 回答
22
解释:
如果文件与您上次签出的提交不是最新的-f
,则用于删除文件。这是为了防止您删除已更改但尚未签入的文件。
例子:
您签出包含文件sample.txt的提交0a12d4。在更改任何文件之前,您可以删除带有.txt 的sample.txt。但是,一旦您对sample.txt进行了更改,您就需要使用来删除该文件git rm sample.txt
git rm -f sample.txt
于 2011-11-15T03:05:39.960 回答
3
如果您尝试对git rm
具有未暂存更改的文件,如果您不提供-f
标志,它将失败:
$ git rm a.txt
error: 'a.txt' has local modifications
(use --cached to keep the file, or -f to force removal)
于 2011-11-15T03:06:19.823 回答
2
如果你编辑一个文件,然后意识到你想删除它。
$ ls 函数c $ vim 函数.c ...编辑文件...
现在想起来,我真的想删除它......
$ git rm func.c 错误:“func.c”有本地修改 (使用 --cached 保留文件,或 -f 强制删除) $ git rm -f func.c
于 2011-11-15T03:07:14.420 回答