0

我知道我可以从跟踪中删除文件并将其删除git rm <file>

或者如果我想保留文件并将其从跟踪中删除,我可以使用git rm --cached <file>

但是当我将它推送到存储库并且其他人从中提取时,这会产生什么影响?这是有道理的,git rm --cached <file>只是将其从每个人的跟踪中删除,并且他们的目录中仍然有文件,但是呢git rm <file>,它只是从跟踪其他用户中删除文件还是会在他们拉动后删除实际文件?

4

2 回答 2

4

区别在于:

rm <file>

这只会从工作树中删除文件。

git rm <file> 

这将从工作树索引中删除文件(通过您的文字进行跟踪)。

git rm --cached <file>

这只会从索引中删除文件。

如果你从索引中删除文件,并推送你的提交,那么结果是一样的,文件将被删除。

于 2012-12-20T15:02:13.733 回答
1

它也会为他们删除该文件。实际上这两种情况都会发生 - 无论您是否使用--cached,因为您最终提交的内容将是同一件事:删除文件。

于 2012-12-20T14:51:16.920 回答