我发现git clean -xdf
。我喜欢它,因为它清理了 IDE 可能创建的内容。
今天被同事问:可以git clean
将文件移动到回收站而不是删除文件吗?
我检查git clean
并删除了测试存储库中的一些文件,但没有将文件移动到垃圾箱。
我知道-n
有空运行选项。
编辑:
我在 Windows 10 上 - 这就是为什么我有一个回收站:)。
我在 PowerShell 中使用带有 PoSh-Git 扩展的 Git(以获得自动完成)。
我发现git clean -xdf
。我喜欢它,因为它清理了 IDE 可能创建的内容。
今天被同事问:可以git clean
将文件移动到回收站而不是删除文件吗?
我检查git clean
并删除了测试存储库中的一些文件,但没有将文件移动到垃圾箱。
我知道-n
有空运行选项。
编辑:
我在 Windows 10 上 - 这就是为什么我有一个回收站:)。
我在 PowerShell 中使用带有 PoSh-Git 扩展的 Git(以获得自动完成)。
这是一个完全做到这一点的 unix 别名的秘诀。 https://coderwall.com/p/g16jpq/keep-your-git-directory-clean-with-git-clean-and-git-trash
您可能很容易将其调整为 powershell。好像核心是
git ls-files --others --exclude-standard
这将列出您未跟踪的文件。但是,我不是 PowerShell 专家,因此我拒绝自己创建别名。
此外,据我所知,git clean 没有原生的软选项。
这非常脆弱,(并且不是git回收文件)但是:
foreach ($s in git clean -xdn) {Remove-ItemSafely -Force $s.Remove(0,13)}
注意事项:
1)如果驱动器没有回收站,它只会删除文件。2)如果输出发生变化,它将中断,git clean -xdn
因为$s.Remove(0,13)
正在删除每行输出的前 13 个字符。3) 您可能必须Install-Module Recycle
首先在任何给定机器上以管理员身份运行。
返回 .NET 对象的 git 插件更适合这种情况。(因为那时你可以remove-itemsafely $s.FileName
,例如)