tags:

views:

25

answers:

1

After converting my repository to Git using git-svn, I'm seeing both the original "master" commits and the merges of those commits into my stable branch both showing up on the stable branch. The log for that branch looks like this:

commit 6e18557b8f7e7173d26df7dd1857362c27eb3ab1
Merge: e36cfba c8a400c
Author: <author>
Date:   Fri Jun 25 21:00:19 2010 +0000

    PROJ-6648 (Merged from Trunk): Updated the API version in build file

    git-svn-id: file:///Users/Developers/git_transition/svn_repo/6.7@14254 f4356f54-06d4-464e-91d3-36485834cb4b

commit c8a400c3ef8ac113dd325382bedd073bfedc3dd1
Author: <author>
Date:   Fri Jun 25 20:39:33 2010 +0000

    PROJ-6648: Updated the API version in build file

    git-svn-id: file:///Users/Developers/git_transition/svn_repo/trunk@14253 f4356f54-06d4-464e-91d3-36485834cb4b

commit 9b968ba82f6f850919c41702dc024703e5721b7e
Merge: 9ef2df8 c628db1
Author: <author2>
Date:   Fri Jun 25 14:45:30 2010 +0000

    PROJ-6819: (Merged from Trunk) Reverted changes from last commit where initialize and teardown were called on each sftpshuttle invocation.  Now using a strategy where

    git-svn-id: file:///Users/Developers/git_transition/svn_repo/6.7@14251 f4356f54-06d4-464e-91d3-36485834cb4b

commit c628db12ef8136cdf22749058e8d8682d0021b8b
Author: <author2>
Date:   Thu Jun 24 20:10:53 2010 +0000

    PROJ-6819: Reverted changes from last commit where initialize and teardown were called on each sftpshuttle invocation.  Now using a strategy where the retries counter

    git-svn-id: file:///Users/Developers/git_transition/svn_repo/trunk@14240 f4356f54-06d4-464e-91d3-36485834cb4b

Directly after the commit that merged a commit to the trunk into the branch, I see the commit for the original trunk commit.

I could understand trunk commits showing up in the branch history from before the branch was created, but afterwards it seems like the trunk and branch should have different histories. I did notice the "Merge" attribute for these duplicated commits, but couldn't figure out it's significance.

A: 

Got confirmation that this IS the intended behavior when migrating from a version of SVN that supports merge tracking to Git. Basically, it's using the svn:merge-info metadata to derive the commit information for the original commit to the trunk and incorporating that info into the branch. The Merge property on the merge commit log shows where it's splicing together the branch and the commit to the trunk that is being merged.

Bradley

related questions