Comparison with Git, Mercurial or Darcs?

Zooko Wilcox-O'Hearn zooko at zooko.com
Thu Nov 5 03:18:50 GMT 2009


On Tuesday,2009-11-03, at 23:51 , Ben Finney wrote:

>> Perhaps you refer to the fact that if I add features A, then B,  
>> then C, I can remove feature A, so your history would change. I  
>> actually like this feature.
>
> I've never seen a good explanation for why it would be desirable  
> for anything involving a repository that might ever be shared with  
> anyone — and I think it's folly to decide forever that any  
> particular repository will never be shared.

It's a very bad idea for a repository that has already been shared  
with someone, but it is perfectly fine for a repository that you have  
not *yet* shared with someone but then you later share with someone.   
See what I mean?  It confuses people who already have A in their copy  
of your repo if you delete it from yours, but if nobody already has a  
copy, then it leaves a perfectly clean repo which you can later share  
without the danger of confusing anyone. It's a lot like "git rebase"  
in that way.

> This seems to be common to just about everyone I've ever spoken to  
> that likes using Darcs; they don't do much sharing of their  
> repositories with others :-)

I like darcs and I do a lot of sharing repos with others.

> No, a centralised workflow implies that the repository is in a  
> central location, and is the common commit location for numerous  
> working trees (used by multiple people, or multiple distinct  
> machines by the same person, or both). AIUI most DVCSen can't do  
> this. <URL:http://doc.bazaar-vcs.org/bzr.dev-html/en/tutorials/ 
> centralized_workflow.html>.

I don't understand how a DVCS could prevent this, nor how it could  
enforce it.  I do understand how it could facilitate it by making a  
specific remote repo be the default so that you don't have to specify  
it explicitly when you do things, and darcs has the ability to do  
that.  Could you explain more what you mean by this?

> I've had trouble using Darcs with empty directories; perhaps  
> reverting them, perhaps renaming them, I can't recall. It seems to  
> be common wisdom that one shouldn't have an empty directory in a  
> Darcs project.

It sounds like you hit a bug.  I searched the issue tracker and found  
some bugs involving directories that were fixed in darcs < 1.0.9  
(which was released June 2007), but I couldn't tell if that's what  
you experienced.  Renaming and reverting empty directories works fine  
as far as I know.

Regards,

Zooko


More information about the bazaar mailing list