On Tue, Nov 11, 2008 at 11:11:02AM +0100, Lele Gaifax <[EMAIL PROTECTED]> wrote:
> Also, can you explain what you meant with "tailor replays all the
> changesets itself"? It would mean tailor reimplemented a superset of
> all the VCSs it handles, and that's suprising me :)

I hope it's not something that hurts you, just fast-import has a
different approach. You know that for example when there is a rename
like 'a' -> 'a/b' then tailor have to use ugly hacks (for example when
the target repo is darcs) to 1) first move a/b back to a, then 2) use
darcs mv to move it to a/b again.

With fast-import, this is not an issue, as all the darcs backend does is
to say "hey, a new patch is applied, here is the new result, take this
as a commit", and this is a copletely valid behaviour. The easy part is
that the importer will 1) just ignore the "file modification" if the
file is unchanged and 2) will automatically detect renames / copies, so
you don't have to care about it too much.

> I'd be also interested in a better understanding of the
> xxx-fast-import mechanism: how does that work in general? Can you
> point me to some enlightening document?

Sure. :) Even, in fact it could be possible to add support to tailor to
converm from/to the fast-import format, I guess. ;)

In general it's like: Let's say the one vcs is 'darcs', the other is
'git. Then all you have to do is:

cd repo.darcs; darcs-fast-export | ( cd repo.git; git fast-import)

So there is a unified stream format and there can be importers and
exporters for various vcses.

The documentation is here:

http://www.kernel.org/pub/software/scm/git/docs/git-fast-import.html

Attachment: pgprcOcAwiMVO.pgp
Description: PGP signature

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to