[Zope-dev] Hg mirror available

Sidnei da Silva sidnei.da.silva at gmail.com
Thu Jun 18 13:28:13 EDT 2009


Hi Wolfgang,

On Thu, Jun 18, 2009 at 7:31 AM, Wolfgang Schnerring<ws at gocept.com> wrote:
> * Sebastien Douche <sdouche at gmail.com> [2009-06-18 01:34]:
>> This is a first attempt to build an Mercurial mirror :
>> http://hg.zope.mirrors.securactive.org/
>
> How did you convert the repository?
>
> I'm asking because I noticed that basically all SVN->DVCS conversion
> tools (hg convert, git-svn, bzr svn-import, svn2bzr, svn-fast-export.py,
> svn-all-fast-export.cpp) do not convert the history properly, more
> precisely, history that happened on branches is lost:
>
> 1. import /trunk/foo.txt
> 2. branch /trunk to /branches/mybranch
> 3. edit /mybranch/foo.txt
> 4. merge /mybranch to /trunk
>
> If you now ask svn for the history of /trunk/foo.txt (say with 'svn
> log'), you see both steps 3 and 4. After conversion to a DVCS with one
> of the above mentioned tools, you only see step 4, while step 3 never
> happened in the DVCS repository. I think that's unacceptable, most
> importantly because all commit messages that happened on branches are
> lost that way.
>
> Does somebody here know something about this phenomenon, by any chance?
> Am I missing something?

Here's some context about this from one of the Bazaar developers, John
Arbash Meinel. Hopefully that will solve some of your questions?

"""
In pretty much all dvcs merging a content exactly back to trunk does not
generate a change message when doing "bzr log foo.txt".

I'm not really sure what he means by "edit" and then "merge" without a
commit inbetween. So I'm assuming there is one.

Now, what really matters is whether or not *Subversion* recorded 4
correctly, such that it can actually see that it was a merge from 3.

My understanding is that before svn 1.5 that isn't possible. So you are
left with trying to infer that sort of thing from the history. Which
would be possible, but probably expensive.

I'm pretty sure SVN represents (4) as not a *merge* but as an indentical
commit.

I don't have a great answer there. Though the fact that Wolfgang says
svn shows both... I suppose because "svn log" shows everything across
all branches?
"""

-- 
Sidnei da Silva
Canonical Ltd.
 Landscape · Changing the way you manage your systems
http://landscape.canonical.com


More information about the Zope-Dev mailing list