Thursday, March 31, 2011

How to get a list of all SVN commits in a repository and who did what to what files?

Hi

I'm needing to get a list with all the revisions and files modified in each one, and by who.

Is that possible?

I need to know who user did the most changes to the repo and what changes.

From stackoverflow
  • Take a look at svn log and svn blame.

  • If you're using TortoiseSVN (on windows), then you can use the "Show log" function to see a list of all commits.

    In this dialog you can also open some statistics/graphs such as "number of commits per week" (for each user).

  • svn log --verbose
    

    Should do the trick. http://svnbook.red-bean.com/en/1.0/re15.html

  • In the root of the working copy, type

    svn log -v
    

    This will give you everything. If this is too much then use --limit:

    svn log -v --limit 100
    

    See the log command in the SVN Book.

  • Try the demo of FishEye by Atlassian. This tool can give you all the stats about your repo that you would ever want.

  • I have written a tool called 'svnplot' (which I admit was inspired by the output of StatSVN). Its written in python and available on Google code. http://code.google.com/p/svnplot. You can see the sample output at http://thinkingcraftsman.in/projects/svnplot/index.htm

    Basically it converts the Subversion log history into a 'sqlite' database and then queries sqlite database to generate graphs. You can write your own queries using the created sqlite database.

    See if it works for you.

  • Also check out StatSVN

    StatSVN retrieves information from a Subversion repository and generates various tables and charts describing the project development, e.g. timeline for the lines of code, contribution of each developer etc. The current version of StatSVN generates a static suite of HTML or XDOC documents containing tables and chart images.

    StatSVN is open source software, released under the terms of the LGPL

0 comments:

Post a Comment