gpt4 book ai didi

svn - 如何删除 SVN 中未跟踪的文件

转载 作者:行者123 更新时间:2023-12-03 06:16:50 27 4
gpt4 key购买 nike

如何使用 svn 命令行工具从 SVN checkout 中删除所有未跟踪的文件? Git 和 Hg 为此提供了 cleanpurge 命令,但我在 SVN 中找不到相应的命令。

我不在乎是否必须恢复过程中的所有本地修改(在这种情况下,我本质上希望将结帐恢复到原始状态),或者对跟踪文件的本地修改是否可以保持不变;任何一种情况都是可以接受的。

最佳答案

可能有一种内置的方式,但如果有的话,我不知道。但是,类似以下内容应该可以完成这项工作:

svn st | grep '^?' | awk '{print $2}' | xargs rm -rf

(所有未版本控制的文件应出现在 svn st 中以 ? 开头的行中。)

编辑 ( @GearoidMurphy )让这段代码在 cygwin 环境中工作是具有挑战性的,因为 xargs 将 Windows 路径斜杠视为转义序列,并且在解析 '\r\n' 行结尾时遇到困难,下面是我对这个完全有效的答案的改编解决方案:

svn st | grep '^?' | gawk '{printf(\"%s|\", $2)}' | xargs -d "|" -n1 C:\cygwin\bin\rm -r

关于svn - 如何删除 SVN 中未跟踪的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10414533/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com