[darcs-users] annoyance with darcs convert . (darcs convert dot, aka the current directory)
Dan Pascu
dan at ag-projects.com
Mon Feb 23 07:51:05 UTC 2009
On Sunday 22 February 2009, Thomas Hartman wrote:
> > cd foo # yep, that's foo/foo
>
> Well, it certainly confused me! I would say disallow, or at least
> warn. I'm now doubting whether I am in a darcs-2 repository after all,
> since I edited _darcs/format manually. I suppose I will need to
> convert and push again.
>
> I suppose another countermeasure that would have prevented this mess
> is if _darcs/format was in some
> kind of resistant-to-editing binary format.
>
> I don't really like either of these ideas because they seem like
> make-work though.
>
> After some reflection, I think the most intuitive thing to do might be
> to make convert a flag to darcs get, like
>
> darcs get --converto-to-darcs-2
I think this is exactly what we shouldn't do. This leaves the impression
that everybody could convert by simply getting the repository, while in
fact this will only lead to multiple converted repositories which are
incompatible between them. Even more, a flag to get, will suggest to
anyone that converting a repository is a simple matter that can be done
on the fly as a side effect while getting a repository. This is blatantly
false, as the conversion is not only a standalone operation, it is a very
special and particular operation that has to be done only once in only
one place.
If you have multiple sibling repositories, you should merge all the work
into one of them, convert that, discard the others and re-get them.
> The word "convert" followed by that elaborate warning message confused
> me into thinking it was doing something destructive to the directory.
It depends on what you understand by destructive, but you can say that it
does something "destructive" to the repository. It does convert it to a
different format and the operation is not revertable, so the repository
is changed in a way that cannot be undone.
--
Dan
More information about the darcs-users
mailing list