|
|
|
Alex5
|
Hi,
I am trying to use StatSVN on a repository containing a moved directory. In this forum I have read several times that StatSVN would handle those moved files like deleted and afterwards added files. This behavior would be sufficient for me at the moment. But I am seeing the following behavior: Files that have not been modified after the directory move operation do not appear on the directories statistics main page (index.html) and they are also not included in the current LOC count. The local copy of the repository is the same version, the svn log was created from. Do you have any ideas on how to solve my problems and getting correct statistic information? Best regards Alex |
||||||||||||||||
|
Jason Kealey-2
|
Two questions:
1 - Does your svn log contain entries for these files after move.
2 - what if you run statsvn with an exclude for only that folder, do you get some data?
Thanks, -- Jason Kealey - [hidden email] LavaBlast Franchise Software - http://www.lavablast.com Simplifying day-to-day franchise operations On Fri, Nov 21, 2008 at 6:34 AM, Alex5 <[hidden email]> wrote:
------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Statsvn-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/statsvn-users |
||||||||||||||||
|
Alex5
|
Hello Jason Kealey,
the svn log (svn 1.5.4) does not contain the files of the moved folder, that have not been changed since the move operation. The log only contains the moved directory: <logentry revision="1234"> <author>abc</author> <date>2008-11-13T08:54:25.978873Z</date> <paths> <path action="D">/trunk/sub/movedDir/src</path> <path copyfrom-path="/trunk/sub/movedDir/include" copyfrom-rev="1233" action="A">/trunk/movedDir/include</path> <path copyfrom-path="/trunk/sub/movedDir/src" copyfrom-rev="1233" action="A">/trunk/movedDir/src</path> <path action="D">/trunk/sub/movedDir/include</path> </paths> <msg>Move the movedDir directory</msg> </logentry> If I exclude the moved directory (old and new position) I get the correct svn statistics for my repository excluding the moved directory. Actually the moved directory is the part of the repository I am mostly interested at :-). Best regards Alex
|
||||
|
Jason Kealey-2
|
1 - The log has always behaved that way, and it is good to confirm that what we are trying to monitor is in there. The app should infer the contents of the directory when it is moved from previous log entries and the current file system in that folder. I do believe there are limitations when content of the new folder is deleted after the move, but this doesn`t seem to be your case.
2 - If you excluded the old directory only, I was curious to see if this changed anything, but I guess not.
At this point, you can try using the -dump option to figure out what data we are picking up, but I don't have any suggestions as to why it is behaving this way. It does appear you have hit a fringe case (bug or limitation), but what I've seen up to date, your scenario should be supported so there must be something else at play.
If you can figure out how to repro it using a tiny shareable repository, that could be great.
Jason
On Mon, Nov 24, 2008 at 2:44 AM, Alex5 <[hidden email]> wrote:
-- Jason Kealey - [hidden email] LavaBlast Franchise Software - http://www.lavablast.com Simplifying day-to-day franchise operations ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Statsvn-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/statsvn-users |
||||||||||||||||
|
Alex5
|
Hello Jason Kealey,
I am able to reproduce the problem with a minimal repository. - Create a new svn repository - Add the directories sub/dir and a file sub/dir/main.cpp containing 2 lines and commit the added files - if I generate the statistics on the repository now by calling the following commands, I get the empty log error (maybe this is a fringe case - head revision 0): svn.exe log "%SVNREPOSITORY%" --xml -v > \Temp\svn.log svn.exe co "%SVNREPOSITORY%" "\Temp\LocalSVNRepoCopy" java -jar statsvn.jar -include "**\*.cpp" "\Temp\svn.log" "\Temp\LocalSVNRepoCopy" - Now I add a third line to the main.cpp file and commit the change - the statsvn statistics now does not output any warnings and correctly identifies the three LOC of the project. index.html shows the following information now: Generated: 2008-11-25 11:21 Head revision: 1 Report Period: 2008-11-25 to 2008-11-25 Total Files: 1 Total Lines of Code: 3 Developers: 1 Directories [root] (0 files, 0 lines) sub (0 files, 0 lines) dir (1 files, 3 lines) - Now I move the directory dir directory out of the sub directory into the root directory of the repository and commit the change. - statSVN now does not report any warnings but outputs the current LOC to be 0! index.html shows the following information: Generated: 2008-11-25 11:43 Head revision: 2 Report Period: 2008-11-25 to 2008-11-25 Total Files: 0 Total Lines of Code: 0 Developers: 1 Directories [root] (0 files, 0 lines) sub (0 files, 0 lines) dir (0 files, 0 lines) Maybe it has something to do with the fact, that the moved directory is not renamed or is moved between different directory hierachy levels. Best regards Alex
|
||||||||||||||||
|
Jason Kealey-2
|
Thanks for taking the time to do the research.
Please create a new issue on our bug tracker (sourceforge) and call it "problem with generated stats when folder is moved into parent".
Attach all scripts/information you have.
Hopefully we will find some time to investigate this soon enough.
Thanks again,
Jason
On Tue, Nov 25, 2008 at 5:49 AM, Alex5 <[hidden email]> wrote:
-- Jason Kealey - [hidden email] LavaBlast Franchise Software - http://www.lavablast.com Simplifying day-to-day franchise operations ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Statsvn-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/statsvn-users |
||||||||||||||||
|
Alex5
|
Hi Jason Kealey,
I have added this issue to the statsvn bug tracker at sourceforge.net. Thanks for your efforts. Best regards Alex
|
||||||||||||||||
|
RobinP
|
Hi,
I'd just like to bump this issue because for me it's a complete blocker. It basically means any time you move a directory (which by the way is one of the major touted features of SVN), the contents of that directory disappear from all stats until such time as the files within are modified. I do not believe this is just a 'fringe' case as stated in one of the replies. I have a feeling this may be a major PITA to fix, since I think the information needed cannot be found from the log, so I'm not sure how you would get the extra information you need, maybe from svn diff on the revisions where a move directory took place, but I and I am sure a lot of other people would much appreciate it. Perhaps at the least a rough idea of when you might have time would be nice. Thanks, Robin
|
||||||||||||||||
|
Jason Kealey-2
|
In the early StatSVN days, I did implement some partial support for directory moves but I remember the performance was not very good. My old code is still available in one of the Subversion branches.
You are correct that the elements are not all in the svn log. When a directory is deleted or moved, there is only one entry in the log file: that action. The children in that directory (other folders and files) are not individually listed. Therefore, the only way to know exactly what was affected is to do a recursive svn list. http://svnbook.red-bean.com/en/1.0/re14.html
(And svn cat to figure out the contents of the file in the past). In the current StatSVN, we infer what was there from the contents of the directory, to avoid doing these additional checks that slow everything down.
In terms of implementation, I agree this is something that should be tackled, but the three main StatSVN developers are now all investing their time & energy on three different software startups and none of us have time to work on this larger issue. External help will be required for this, unfortunately.
Jason On Wed, Feb 11, 2009 at 6:25 AM, RobinP <[hidden email]> wrote:
-- Jason Kealey - [hidden email] LavaBlast Franchise Software - http://www.lavablast.com Simplifying day-to-day franchise operations ------------------------------------------------------------------------------ Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com _______________________________________________ Statsvn-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/statsvn-users |
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |