Darcs
Andy Gill
andy at galois.com
Fri Nov 23 12:52:58 EST 2007
One problem I do have with darcs is how hard it is to specify one
version number of a repo that everyone can share; in SVN this is
trivial.
I do strongly support us using a distributed version control system,
this lets us stage personal testing.
AndyG
On Nov 23, 2007, at 8:03 AM, Ian Lynagh wrote:
> On Fri, Nov 23, 2007 at 03:25:40PM +0000, Simon Marlow wrote:
>>
>> - How much effort it is to switch, i.e. we need to list the things
>> that would have to change
>
> We'd have to change the buildbot script, but that ought to be trivial
> (assuming the replacement is supported by buildbot, which Mercurial
> and
> Git are by the looks of it).
>
>> What should we consider as alternatives? At least Mercurial and
>> git, I
>> would think. Any others? I think we should only consider
>> distributed VCs.
>
> Can someone familiar with the alternatives please give the equivalent
> for these commands in them?
>
> # Make a repo with a single file with lines 1,3,5,7 in
>
> mkdir repo1
> cd repo1
> darcs init
> printf 'Line1\nLine3\nLine5\nLine7\n' > file
> darcs record --all --look-for-adds -m patch1 -A igloo at earth.li
> cd ..
>
> # Check out 2 copies of the repo
>
> darcs get repo1 repo2
> darcs get repo1 repo3
>
> # Add a patch that adds lines 2 and 6, then another that adds
> line 4
>
> cd repo1
> printf 'Line1\nLine2\nLine3\nLine5\nLine6\nLine7\n' > file
> darcs record --all -m patch2
> printf 'Line1\nLine2\nLine3\nLine4\nLine5\nLine6\nLine7\n' > file
> darcs record --all -m patch3
>
> # Pull the line 4 patch, but not the lines 2 and 6 patch, into the
> # other repos non-interactively and interactively
>
> cd ../repo2
> darcs pull --all --patches patch3
> cd ../repo3
> darcs pull
> n
> y
>
> # repo2's and repo3's file now contains lines 1,3,4,5,7
>
>> are you violently opposed/in favour of switching?
>>
>> ---
>>
>> I should say a little about how *I* feel about darcs. I've grown
>> to love
>> cherry-picking and one-command merging, when it works. I'd be
>> loathe to
>> lose the ability to commit/revert a subset of the changes in a
>> tree or file
>> (I use emacs' darcsum mode). I love the fact that I can unrecord/
>> re-record
>> patches.
>>
>> We do need merging to work, though.
>
> I basically agree with all that, and I love darcs too. Neil's point
> about community consistency is a good one too, I think.
>
> Overall I'm in favour of sticking, although not violently. I haven't
> tried any of the distributed alternatives though, so I'm not sure how
> useful that opinion is :-)
>
>> I would like it if it were possible to cherry-pick a patch without
>> its
>> dependencies, resulting in a conflict that needs to be resolved,
>> in a way
>> that works nicely if you happen to pull the dependencies later too.
>
> Ug. Intuitively the resolution patch conflicts with the actual
> dependencies. That sounds a little scary.
>
>
> Thanks
> Ian
>
> _______________________________________________
> Cvs-ghc mailing list
> Cvs-ghc at haskell.org
> http://www.haskell.org/mailman/listinfo/cvs-ghc
More information about the Cvs-ghc
mailing list