我希望 git 清理我忽略的所有未跟踪文件。
我认为这git clean -dX
是显而易见的解决方案,但它什么也没做:
# Set up test directory
mkdir git-test && cd git-test
git init && touch x && git add x && git commit -m Initial
mkdir -p folder1/folder2/
touch folder1/folder2/file
echo "folder2/" >> .gitignore
git clean -fdX # Does nothing
为什么不删除folder1/folder2/
?
文档说
**/foo
匹配foo
任何地方的文件或目录,与模式相同foo
所以我的folder2/
模式确实匹配/folder1/folder2/
并且-X
应该清理它。
这是怎么回事?