We're in the bug fix phase of a project. I'm trying to fix a feature that regressed sometime in the last 2 months. I think I have isolated the problem to a single Java class' method. Ideally, I'd like compare how this method evolved over the last 5 or 10 Subversion commits.
Are there any tools that understand Java and Subversion enough to visualize the evolution of a method across multiple commits? I'm imagining an extension to the Subversive Eclipse plugin.
I'm looking for something beyond a line/character comparison. Svn blame/show annotations doesn't understand that the text being analyzed is Java code which has methods. Are there any tools which visualize with this type of understanding?
Something akin to the Motive tool being described in this research paper... 2007. Visualizing Software Architecture Evolution using Change-sets. Andrew McNair, Daniel M. German, and Jens Weber-Jahnke, Computer Science Department, University of Victoria, Victoria, Canada, {amcnair,dmg,jens}@cs.uvic.ca http://turingmachine.org/~dmg/papers/dmg2007_wcre_changesets.pdf
By all means, please try several different SVN clients: you might find something better for your needs than if you constrain yourself to Eclipse.
Here are a few options:
http://liquidat.wordpress.com/2008/08/24/short-tip-compare-revisions-with-svn/
http://www.svnforum.org/threads/37499-graphical-tools-for-svn-diff
And I suspect you're already using this:
http://subclipse.tigris.org/
Here are some additional "tips and tricks" for using the Subclipse SVN client:
http://ist.berkeley.edu/as-ag/tools/usage/subclipse-usage-tips.html
http://www.clear.rice.edu/comp310/Eclipse/Subclipse/
'Hope that helps!
I've never seen anything that does exactly what you describe, but "svn blame" might help. For every line in a particular version, it shows the last revision where that that line was changed. This is called "Show Annotations" in Subclipse.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With