List all files changed by a particular user in subversion

Svn

Svn Problem Overview


Is it possible to get a list of all files modified/added/deleted by a particular user?

The goal is to get an idea of what a user did for the day (or date range).

Svn Solutions


Solution 1 - Svn

Here's an example, using the svn log command and linux sed command, with your username, 'blankman':

svn log | sed -n '/blankman/,/-----$/ p'

If you're looking to obtain this information with continual reports, using a project like StatSVN, which Patrick mentioned, is very useful. If you're using Maven, there is a StatSCM plugin which will generate this information on your project site.

Solution 2 - Svn

There is no need to bother with grep, sed, etc starting from Subversion 1.8. The release introduced --search option that you can use with svn log command!

The options allows you to search your repository history for:

  • revision's author (svn:author unversioned property),
  • date (svn:date unversioned property),
  • log message text (svn:log unversioned property),
  • and paths affected by the particular revision.

See SVNBook 1.8 | svn log command-line reference.

Solution 3 - Svn

Shek's response helped me with what I needed to do, but I found I got more accurate results with the following tweak:

svn log | sed -n '/ | blankman | /,/-----$/ p'

Otherwise, the list includes commits made by others that simply reference me by name.

Solution 4 - Svn

Why not simply use the tortoise SVN ?

Totoise SVN --> Show Log Add the user id on top left for which you would like to see the list of changes

Solution 5 - Svn

This works for me:

svn log  | grep YOUR_USERNAME_HERE | awk '{print $1}' | sed s/r//g | xargs -I $ svn diff --summarize -c $ | sort | uniq

Solution 6 - Svn

Yes. We use StatSVN for our subversion reports, and one of the reports it does is commits by developer.

TortiseSVN also lets you look at log messages by date for authors.

Solution 7 - Svn

Here is the date-range version

> svn log -v -r{"2011-01-01 00:00:00"}:{"2011-02-18 00:00:00"}| sed -n '/russenreaktor/,/-----$/ p'

Solution 8 - Svn

I found this useful command to find a list of modified files by a given user:

svn log -v -r{2012-08-01}:HEAD 
| awk '/^r[0-9]+ / {user=$3} /./ {if (user=="username") {print}}'
| grep -E "^   M|^   G|^   A|^   D|^   C|^   U" 
| awk '{print $2}'
| sort | uniq

And the link to the original article.

Solution 9 - Svn

Here's a small script to show which files were changed by a certain user between revisions.

#!/bin/bash
# @param $1: Start revision
# @param $2: End revision
# @param $3: User
#
# Example: svn_scapegoat.sh 1000:HEAD jdoe

svn_changed()
{
    svn blame --revision $1:$2 -- $4 | grep -E "^ [0-9]* *${3} "
}

svn diff --revision $1:$2 --summarize | \
cut -c9- | \
while read path
do
    if [ -n "$(svn_changed $1 $2 $3 $path)" ]
    then
        echo "$3 changed $path"
    else
        echo "Someone else changed $path"
    fi
done

Solution 10 - Svn

In order to see the list all files changed by a particular user in subversion for a particular directory structure, then first you need go to the that directory structure and on the right side of directory panel do a right click.. then, go to Show Log-->on top most left corner we get filter option.

henceforth by putting the name of user you can see all the files changed by that particular user in the bottom panel.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionBlankmanView Question on Stackoverflow
Solution 1 - SvnshekView Answer on Stackoverflow
Solution 2 - SvnbahrepView Answer on Stackoverflow
Solution 3 - Svnuser890155View Answer on Stackoverflow
Solution 4 - SvnvsinghView Answer on Stackoverflow
Solution 5 - SvnBrad ParksView Answer on Stackoverflow
Solution 6 - SvnPatrick CuffView Answer on Stackoverflow
Solution 7 - SvnprintminionView Answer on Stackoverflow
Solution 8 - SvnTadej MaliView Answer on Stackoverflow
Solution 9 - Svnl0b0View Answer on Stackoverflow
Solution 10 - Svnanurag kumarView Answer on Stackoverflow