git clean和system rm之间的区别

时间:2013-01-27 16:26:19

标签: git

有什么区别:

git clean -f temp1.txt

rm temp1.txt

Git doc说:

git-clean - 从工作树中删除未跟踪的文件

那么这样做的重点是什么,而不仅仅是系统命令?

3 个答案:

答案 0 :(得分:9)

无论如何,

rm都会删除该文件。 git-clean只会删除它,如果它实际上没有跟踪。当然,git-clean也接受以回购意识方式自定义其行为的参数(例如-x)。

答案 1 :(得分:5)

以你为榜样?没有任何区别。如果您想要删除许多未跟踪的文件而不必自己弄清楚它们的位置,那么git clean会很方便。它具有内置的递归功能,可以了解跟踪哪些文件以及哪些文件没有,甚至可以正确处理被忽略的文件。

答案 2 :(得分:5)

当指定无路径或适用于多个文件的路径时,会出现git clean的巨大优势。如果你只是运行git clean -xdf,你基本上将工作目录恢复到原始状态,而没有任何未跟踪的文件。例如,当您忽略生成的二进制文件时,您可以使用它一次性删除它们,而无需手动指定每个文件夹。