[darcs-users] Interoperability?

David Roundy droundy at abridgegame.org
Sat Oct 11 11:30:32 UTC 2003


On Fri, Oct 10, 2003 at 11:09:21PM +0200, Luna Kid wrote:
> > There is always darcs diff, which isn't bad for sending patches
> > to non-darcs-using people, but then when they make the changes in CVS
> > you'll get a conflict between your patch and itself.
> 
> Sorry, I'm not sure what this conflict you mention would be.
>
> Anyway, let's forget about CVS checkin. Could this 
> simplistic brute-force cycle provide an easy solution?
> 
>     - do local darcs dev.
>     - record
> 
> sync to CVS:
>     - download the CVS snapshot
>     - do a darcs diff against it
>     - send the patch to the CVS folks
> 
> sync back from CVS:
>     - convert the CVS snapshot to a temp darcs repo
>     - pull/merge/... it (what should this be?)
> 
> Well, as you see, I'm not terribly familiar with darcs yet, 
> so I may be totally off the track, sorry! :)

The conflict would come when you do the pull from the newly converted CVS
snapshot to your original darcs repo.  Both will have the same change that
you made (and sent in a patch for), but if we aren't careful, darcs won't
know that it's one change, it'll see it as two attempts to modify the same
portion of the same file--a merge conflict.

On Sat, Oct 11, 2003 at 02:17:50PM +0300, Aggelos Economopoulos wrote:
> Not that I have any use for bidirectional darcs - cvs communication myself, 
> but wouldn't a cvs_export command that appends a line of the form
> 
> DarcsPatchID: mangled_patch_name optional_repo_name
> 
> to the cvs log be enough? On the originating developers repository, the
> import tool would know the patch is already applied and for other
> darcs-using developers the import script could either pull the darcs
> patch from the supplied repository or failing that just make a new patch.

Yeah, something like this would have to be done.  Probably I would want to
supply the full patch name (the one in _darcs/inventory), so that a
cvs->darcs mirror could make a new patch.  The catch would be that if your
cvs->darcs gateway doesn't already know about the patch, you'd need to
restrict yourself to normal hunk patches--no file renames and no token
replacements.  Otherwise the mirror script won't create a patch which is
identical to the original one.
-- 
David Roundy
http://www.abridgegame.org




More information about the darcs-users mailing list