On Mar 26, 8:12 pm, "William Stein" <[EMAIL PROTECTED]> wrote:
> On Wed, Mar 26, 2008 at 1:18 PM, root <[EMAIL PROTECTED]> wrote:
>
> >  William,
>
> >  git can do this. Since git uses a hash it will always regenerate the
> >  same hash from the same file.
>
> >  In fact, git uses hashes all the way down the tree so you can just
> >  look at the hash code of the root of the tree to see if anything
> >  changes. Equal hash codes, even across the net, imply exact copies
> >  of the source tree.
>
> >  Axiom uses arch, cvs, svn, and git. I have used several other systems
> >  in the past. Now all of the primary work is in git and is export-only
> >  to the other systems (git can work with them transparently). git has
> >  fundamentally changed the way I work and the way Axiom is maintained,
> >  all for the better.
>
> >  I know it is a challenge to change source code systems but the gain
> >  is well worth the pain in this case. The fact that git works with
> >  legacy humans is a huge plus in minimizing the pain.
>
> We are indeed considering changing to git.  The
>    repo --> plain text --> original repo
> problem is a show stopper -- i.e., if Mercurial absolutely can't
> do that, then we have no choice but to dump mercurial for git.
> I hope Mercurial can do that though, since we've spent a lot
> of time getting going with Mercurial, and it works fairly well.

I did play around with a small repo that included a bundle that I did
merge without conflict and in that case reimporting the commits one by
one yields the same md5sums for all the files in the repo. When I
imported a "merge" changeset I got the following:

[EMAIL PROTECTED] c]$ hg import ../b/5.patch
applying ../b/5.patch
abort: 00changelog.i: no node
1711dd4455804471c46598ec4f92f672de73916e!

But it didn't make a difference, expect that in the end the repo had
one fewer commit. I am still curious what happens if you resolve a
merge conflict in that changeset. I am not too positive about the
outcome since "hg help export" states:

    NOTE: export may generate unexpected diff output for merge
changesets,
    as it will compare the merge changeset against its first parent
only.

I guess I need to take on the Sage repo and see what happens when I do
the same thing with 9,000+ commits.

>  -- William

Cheers,

Michael
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to