'git clean' 可以将文件移动到垃圾箱/回收站吗?

Can 'git clean' move files to trash / recycle bin?

我找到了 git clean -xdf。我喜欢它,因为它可以清理可能 IDE 创建的内容。

今天同事问我:可以git clean将文件移动到回收站而不是删除文件吗?

我检查过,git clean 删除了测试存储库中的一些文件,但没有将文件移至回收站。

我知道试运行有选项 -n

编辑:

我在 Windows 10 - 这就是为什么我有一个回收站 :)。
我正在使用 PowerShell 中的 Git 和 PoSh-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 专家,所以我拒绝自己创建别名。

此外,据我所知,gitclean 没有原生的软选项。

这是非常脆弱的,(并且不是 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 作为任何给定计算机的管理员。

一个 git 插件,returns .NET 对象更适合这样的事情。 (因为那时你可以 remove-itemsafely $s.FileName,例如)