Reputation: 2539
In subversion is there a command to list all the available repositories registered on a particular host?
Eg. in ClearCase, a cleartool lsvob
would give me the listing of all the versioned databases in a given region. I have not been able to find anything akin to this in subversion.
Upvotes: 11
Views: 28029
Reputation: 1
If you relax the requirement to a smaller set of suspected directories, this command is useful for scripting to get the base directories of a bunch of svn repositories, but it's too slow for searching /. If you need entire system I'd pursue BobC's solution. This method works on repositories and not working copies.
find <directories> -type d -exec bash -c 'if svnlook info "{}" 1>/dev/null 2>&1; then echo "{}"; fi' \;
Upvotes: 0
Reputation: 26
If the svn server is local,for Linux from shell use these commands
#ps aux|grep svnserve/media/Hitachi_boot_disk/Repositories
This will show you how the svn service was started. It will look something like:
/usr/bin/svnserve -d -r /media/Hitachi_boot_disk/Repositories
The path following the -r specifies the path to all Repositories
#cd /media/Hitachi_boot_disk/Repositories
#ls
This will list all the repositories under this server
Upvotes: 0
Reputation: 415
$ find -iname .svn
it should list all working directories on a host
Upvotes: 0
Reputation: 2058
SVN repos have a distinct structure (/conf, /hooks, /db, /locks), so searching for one if its components would be a start.
If locate/updatedb is installed and current:
locate /db | grep /db$
Or by an exhaustive search:
find / -type d | grep /db$
A more sophisticated search would check for the full set of components.
Upvotes: 5
Reputation: 18092
You can create subversion repos anywhere on your server and they are not linked to each other.
In my server I put everything in /var/svn/ then I can list all the repository using ssh and listing this repository.
Upvotes: 1
Reputation: 52984
No. Each subversion repository is independent and knows nothing about the others. There would be no way to locate all of the subversion repositories.
We keep all of our repositories in a standard location (/data/svn
) and can easily and programatically list all of the repositories:
ls /data/svn
Or from a remote system:
ssh svn ls /data/svn
Upvotes: 8