0

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

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

我检查git clean并删除了测试存储库中的一些文件,但没有将文件移动到垃圾箱。

我知道-n有空运行选项。

编辑:

我在 Windows 10 上 - 这就是为什么我有一个回收站:)。
我在 PowerShell 中使用带有 PoSh-Git 扩展的 Git(以获得自动完成)。

4

2 回答 2

2

这是一个完全做到这一点的 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 没有原生的软选项。

于 2018-01-25T21:54:51.460 回答
1

这非常脆弱,(并且不是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,例如)

于 2018-01-25T22:32:56.537 回答