On Tue, Apr 17, 2012 at 14:53, Arijit Datta <arijit.datta_at_ymail.com> wrote:
> Hello,
>
> We have a requirement whereby we need to access a svn server and find the
> no. of check-ins happening for each repository.
>
> For example the SVN is hosted at https://svnexample.net
>
> And there are 3 repositories on it:
>
> https://svnexample.net/rep/project1
> https://svnexample.net/rep/project2
> https://svnexample.net/rep/project3
>
> The requirement is to connect to this server and then find out the number of
> check-in / check-outs happening per project. We want to build a web
> application which does that and gives the user the data in form of graphs,
> etc.
>
> How do we go about doing that? That is how do we access the svn server from
> inside the java code and get these details?
The repository doesn't keep track of checkouts, so you cannot glean
that data from the repository. Ryan Schmidt has a script that can be
used to parse Apache logs to collect this information.
I would recommend against pulling this data from the log in realtime,
but instead populate a database with the relevant data (you'll have to
write something to do this for an initial population of the database
using a one-time output of svn log, then have a post-commit hook which
updates the database going forward), and generate your reports from
queries against that database. The only instance where this would
become a problem is if you regularly change revision properties, but
you can have a post-revprop-change hook to perform those updates if
needed.
Although I don't use it to retrieve/parse log entries, I use SVNKit to
interrogate my repository from within Java. http://svnkit.com/
Received on 2012-04-17 21:16:56 CEST