On Tue, 11 Nov 2008 14:47:37 +0100
Miklos Vajna <[EMAIL PROTECTED]> wrote:

> 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.

Surely not, on the countrary! 8-) Sorry if my tone was ambiguous.

> 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.

That's true when target is /not/ darcs (where tailor tries to be smart
and write out the pending file directly). It does that when the target
isn't able to grok with "after-the-fact operation", that is

 $ mv a b
 $ vcs mv a b

> 
> 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.

Interesting but... does that cover corner cases like

 $ darcs mv a b
 $ darcs mv b c

where older darcses (or other VCS didn't collapse) that into a single
"mv a c"?

Or

 $ svn mv a b
 $ touch a
 $ svn add a

that is a "replacement" in svn parlance?

> ... 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

I see, thanks for the pointer. I really don't know if and when I'll be
able to spend other time on tailor, but consider that noted :-)

bye, lele.
-- 
nickname: Lele Gaifax    | Quando vivrò di quello che ho pensato ieri
real: Emanuele Gaifas    | comincerò ad aver paura di chi mi copia.
[EMAIL PROTECTED] |                 -- Fortunato Depero, 1929.
_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to