SVN是否使用通配符删除?
我正在将VSS存储库迁移到SVN,无意中在第一次签入时包含了所有的_vti_cnf、*.scc文件。我想从SVN中删除这些。(当然不是永久性的——只是头部)。所讨论的应用程序相当大,逐个文件夹查找和删除这些文件将花费很长时间SVN是否使用通配符删除?,svn,visual-sourcesafe,version-control-migration,Svn,Visual Sourcesafe,Version Control Migration,我正在将VSS存储库迁移到SVN,无意中在第一次签入时包含了所有的_vti_cnf、*.scc文件。我想从SVN中删除这些。(当然不是永久性的——只是头部)。所讨论的应用程序相当大,逐个文件夹查找和删除这些文件将花费很长时间 建议?一定有什么明显的方法可以做到这一点,但是周末的临近干扰了我的大脑高级功能。你不能在签出的版本中对*.scc文件进行grep(或其他查找文件的操作),删除它们,然后提交吗?如果你运行的是linux或Mac操作系统,你可以使用查找,像 $ find . -type d -
建议?一定有什么明显的方法可以做到这一点,但是周末的临近干扰了我的大脑高级功能。你不能在签出的版本中对*.scc文件进行grep(或其他查找文件的操作),删除它们,然后提交吗?如果你运行的是linux或Mac操作系统,你可以使用
查找,像
$ find . -type d -name "_vti_cnf" -exec svn delete {} \;
不过,我不再是SVN用户(也从未使用过VSS),因此您可能需要修改命令行和/或首先尝试使用-print
。Jonas的回答应该很好。可能是因为您绕过Subversion的控制,在文件系统级别删除了冲突
如果您可以使用,以下功能适用于我(=我在关联菜单中获得必要的命令):
- 打开搜索窗口
- 搜索所有不需要的文件
- 在列表中选择它们
- 右击
- 选择“陆龟VN”>“删除”
- 提交更改
完成了
通常免责声明在给出版本控制建议时,请小心,备份,我不承担任何责任等。在windows命令提示符下,您可以使用“for”执行递归文件搜索,并对每个匹配的文件调用“svn delete”
C:\> for /r %i in (abc*def.sql) do svn delete %i
注意:请记住,在批处理文件中,您需要将%i替换为%%i
要了解所有其他可与“for”(搜索和解析的瑞士军刀)一起使用的标志,请使用help命令
C:\> help for
或使用PowerShell:
Foreach ($file in Get-Childitem * -include "*.txt")
{
svn del $file.name
}
其中*.txt是通配符,*指定当前目录,在该目录中查找要删除的文件您会这样想,是吗?我试过了,但出于某种原因,它似乎会引起冲突。也许我只是疯了。不幸的是,我正在运行Windows。幸运的是,这取决于你的视角=/那很不幸;)这对你有用吗dir/B/S\u vti_cnf
然后将结果复制粘贴到文本编辑器中,并在每行前面添加svn delete
(例如使用正则表达式)或(响应#5)出现大脑问题-删除文件夹,然后尝试删除其中包含的文件。谢谢。(我敢打赌,一整天最简单的10分!)