乌龟SVN允许在代码库中搜索吗?

3
在一个项目中,我找不到一个文件。我猜想这个文件在某个版本中被删除了。
我只知道文件的名称。使用Tortoise SVN客户端能否找到这个文件?
2个回答

9
如果您知道文件所在的目录,可以右键单击该目录,然后选择“Tortoise SVN ...”,再选择“显示日志”。
一旦对话框显示出来,请在窗口顶部的文本框中(旁边有放大镜),键入文件名。如果它是很久以前删除的,您可能需要使用屏幕底部的“显示所有”或“下一组100个”按钮。
祝好运!

一种非常简洁的查找已删除文件的方法,所以点个赞。但我想澄清一下:不需要知道哪个文件夹,因为“显示日志”会显示所选文件夹下的所有内容。但这既是福音也是诅咒——它可能会显示太多内容并且加载时间更长。所以如果您知道目标文件夹会更好,但不是必需的。 - Michael Sorens

2
如果您拥有终端svn客户端,可以执行类似以下命令:
svn log -r <last_revision_you_know_file_existed> <deleted file>

您可以尝试以下操作(在Linux系统中):
svn log -r 1:HEAD -v | grep D | grep -v M | grep -v A | grep <filename>

这将打印出项目的完整svn操作日志,从版本1开始,直到HEAD。然后,您可以过滤掉(D)已删除的文件,不关心(M)已移动或(A)已添加的文件,最后在(D)已删除的文件集合中搜索“文件名”。

您可以在PowerShell(Winboze)中执行类似的命令。

svn log -r 1:HEAD -v | where {$_ -match "^   D"}

要获取所有已删除文件的列表,可以使用MSOffice2011 +搜索功能。希望这能帮到你。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接