开发者

How to search SVN repository for a file when I'm not sure where I put it?

Co-worker is sure he checked in a file: foo_oustanding.dpr but isn't sure when/wher开发者_运维技巧e (we have lots of "tools" and "utility" ancillary branches, lots of project branches, etc..

I need a way to search the entire repository for this file. I could check the whole source tree out to my HD, but that would take several hours. Is there a faster way? I tried the Repo Browser (Tortoise) and it didn't seem to have a search. I also thought about dumping the log, from the beginning of time. But that seemed silly.

I have, at my disposal:

  • Tortoise SVN 1.6
  • Subversion 1.5.6 running on Apache It runs on a Windows 2003 server.
  • Remote Desktop access to the server, with admin rights.


To see a list of all the files, send grep to text file in Command Prompt:

svn list -R myurl >> results.txt 


If it was checked in fairly recently, you could do a verbose remote svn log from the top of the tree and see a history of all the commits across all the branches. You could then grep the output for the file and user name. (You would need the command line svn to do this.)

svn log -v -l 500 http://myserver/svn_root


With Subversion 1.8+ client:

svn log -v URL-OF-REPO-ROOT --search foo_oustanding.dpr


Good question! There doesn't seem to be an official "search" function in Tortoise, but it seems to be possible to search the log in TortoiseSVN for file names, which can be enough in many cases.


See this question and answers:

SVN Repository Search

svnquery is probably what you need.


I search like this:

svn list -R url_to_repo | grep Maintain.jar

It outputs this:

trunk/Project/pkg/Release/Maintain.jar
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜