On Mon, Jun 25, 2007 at 08:45:57 +1200, Martin Langhoff wrote: > On 6/25/07, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > >Ahh, a chance to flame! I will never back down from such a challenge! > > > >Darcs is .. umm .. ehh.. > > > >"Academic". > OTOH, and from the POV of someone closely following the SCM tools in > the last few years (and using almost all of them), darcs was the first > usable DSCM in the camp. I am not sure how much of its commandline > user interface was borrowed from BK or elsewhere, but darcs was > _easy_, where Arch was extremely hard to use. Arch is not in fact distributed. One key feature that makes things distributed is that object (revision in SCM) identity is independent of their location (repository in SCM). And in Arch that is not true. Revisions independent of repositories (and branches) is what makes the ad-hoc branching, that makes git (and hg, bazaar and darcs) so easy, possible. Arch claimed to have easy branching, but it was still the old explicit model. (Besides yes, I can confirm that Arch was not the easiest thing to use.) > The darcs commandset (init, push, pull) is what git, hg and bzr have > today in common. At least _I_ learned about how it could be easy by > watching people use Darcs (and feeling very ashamed of my baroque Arch > usage). The focus on patch tracking (as opposed to "snapshot" > tracking) and the whole patch algebra are two misfires I'd say. > Snapshot-tracking DSCMs are winning (faster and fundamentally more > reliable), and the patch algebra doesn't quite scale and (as far as > I've heard) sometimes ends in unsolvable corner cases. IMHO the patch algebra also falls short of it's goal. The idea is supposed to be that you can cherry-pick easily. However, in practice many changes that are easy to cherry-pick are textually dependent in something like import list, list of files in makefile or such. While git cherry-pick will happily apply such patch and give you a single easy to resolve conflict, darcs will just insist on pulling the other patch as well. -- Jan 'Bulb' Hudec <bulb@xxxxxx>
Attachment:
signature.asc
Description: Digital signature