git-svn: wrong history after cloning a repository

From: Frans Fürst <hidden>
Date: 2016-06-15 22:56:47

Hi,

I'm currently struggeling with a strage behaviour of git-svn: After
git-svn-cloning a given repository (see attachment) in some cases the
git blame differs from the svn blame. The history looks like after a
merge all affected files have been added from scratch at this revision.

The behaviour can be observed using at least the following versions of
git:
1.7.10.2
1.8.1.4
1.8.2.GIT

Given: * svn-repository, svn-server 1.6.11, apache2 module via WEB DAV
       * repository like the one attached:
            * standard svn layout
            * branch ^/branches/feature1 copied from ^/trunk
            * changes made and files added on 
              project1/branches/feature1 by 'testuser1'
            * branch ^/branches/rc-1.0 copied from ^/trunk on 
              revX by 'mergeuser'
            * ^/branches/feature1 merged to ^/trunk on 
              revY by 'mergeuser'
            * ^/branches/rc-1.0 merged back to trunk revZ by 'mergeuser'

Action: git svn clone -s <repo-url>
        git blame <some_file_modified_on-feature1>

Observed behaviour: Changes being made on project1/branches/feature1
being associated to 'mergeuser' who integrated feature1 but not
implemented on that branch.
$ git blame src/file2.txt
9846ece6 (mergeuser 2013-04-11 14:31:21 +0000 1) content2-1
9846ece6 (mergeuser 2013-04-11 14:31:21 +0000 2) content2-2
9846ece6 (mergeuser 2013-04-11 14:31:21 +0000 3) content2-3
Action: svn blame <repo-url>/trunk/<some_file_modified_on-feature1>

Observed behaviour: Changes are correctly associated to user1
$ svn blame src/file2.txt
    4  testuser1 content2-1
    4  testuser1 content2-2
    4  testuser1 content2-3
I don't know yet which steps are really needed to re-create a repository
with this behaviour. My guess is that adding files together with a merge
(see r6 in the attached repository) has something to do with it.

Can you tell me whether this is a known issue or if there's a work
around for this? Unfortunately I'm not very into perl so I can't solve
this on my own. Please let me know if you need additional information.

Thanks

Frans

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help