[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Searching entire repository for a file (fastsvncrawler)

From: Stefan Sperling <stsp_at_elego.de>
Date: Thu, 23 Jul 2020 11:58:50 +0200

On Thu, Jul 23, 2020 at 11:54:52AM +0200, Stefan Sperling wrote:
> On Wed, Jul 22, 2020 at 03:36:36PM -0700, Kenneth Porter wrote:
> > I need to locate a file in a client's large repository. I found
> > fastsvncrawler which uses svn_ra_do_status2 to rapidly dump the entire
> > repository as a directory listing. Has anyone built a Windows binary? Or
> > perhaps it's made it into the distribution? (I access the repo over a Cisco
> > VPN from Windows, or I'd just build it on Linux. I fear I'll have to learn
> > how to build Subversion on Windows, which looks daunting.)
> >
> > <https://github.com/mithro/fastsvncrawler>
> >
> > How it works:
> >
> > <http://vcs.atspace.co.uk/2012/07/15/subversion-remote-api-listing-repository-with-status-request/>
> >
>
> Are you aware of the built-in svn list --search feature, which has
> been available since SVN 1.10.0?
>
> For example:
>
> $ svn list --depth=infinity --search svn.c ^/subversion/trunk
> subversion/svn/svn.c
> $

I forgot to mention that that this feature supports pattern matching,
and that the pattern argument may need quoting. From 'svn help list':

  --search ARG : use ARG as search pattern (glob syntax, case-
                             and accent-insensitive, may require quotation marks
                             to prevent shell expansion)

> Also as of SVN 1.10 the server supports a special-purpose 'list' request
> to speed this up.
>
> In any case, the fastest way to search will likely be with a file:// URL,
> assuming you can get direct access to the repository for this purpose.
>
> Regards,
> Stefan
Received on 2020-07-23 11:59:29 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.