| Time |
S |
Nick |
Message |
| 01:56 |
|
Debolaz |
Is there a comparison between darcs and git or mercurial somewhere? Preferably one that gives a reason why darcs is the better of the three. :) (Note, I'm not being partial here, I'm just curious) |
| 02:03 |
|
eructate |
http://better-scm.berlios.de/ |
| 02:03 |
|
lambdabot |
Title: Better SCM Initiative |
| 02:38 |
|
eructate |
http://changelog.complete.org/[…]-Distributed.html |
| 02:38 |
|
lambdabot |
Title: Whose Distributed VCS Is The Most Distributed? - The Changelog, http://tinyurl.com/qcovu |
| 14:02 |
|
lightstep |
how can i send a patch to a repository? i've just recorded it on my local tree |
| 19:13 |
|
malsyned |
how does it do that? just a zero-byte file in the root of the repo? |
| 19:26 |
|
twb |
malsyned: it creates a lockfile in _darcs, from memory. |
| 19:27 |
|
twb |
malsyned: if you kill darcs hardly at just the right time, you can get the file to stay there afterwards. |
| 19:38 |
|
malsyned |
twb: thanks |
| 20:13 |
|
malsyned |
Can anyone point me to the spot in the darcs code where "resolve" sticks vs and ^s into a file? |
| 20:14 |
|
twb |
malsyned: try section 5.3.5 of the manual |
| 20:15 |
|
twb |
Oh, you actually want the source code? |
| 20:15 |
|
malsyned |
yep. But I'm guessing it's in Resolve.lhs or Resolution.lhs |
| 20:17 |
|
malsyned |
Subversion has the nice feature of providing a little bit of context about which hunk is yours and which is from the repository, so you don't have to remember that while you're busy panicking about the conflict. I'm going to see about adding the patch author or name or something to the ends of the vvv and ^^^ lines. No promises, I'm new to Haskell and to darcs. |
| 20:18 |
|
twb |
malsyned: there is a way to tell darcs to use a third-party merge tool, rather than sticking V V V's in files. |
| 20:18 |
|
twb |
malsyned: i'm trying to find the docs for it. |
| 20:18 |
|
malsyned |
yeah, I've seen it. |
| 20:19 |
|
twb |
It seems to me you could just about do it with that instead of hacking the darcs source directly. |
| 20:19 |
|
twb |
...not that I've actually looked at the darcs source. |
| 20:19 |
|
malsyned |
You may be right - but then I don't get any haskell practice. |
| 20:20 |
|
twb |
You could write the external program in Haskell ;-) |
| 20:23 |
|
malsyned |
how does the external merge work? it applies one each of the conflicting patches to the trees and then sends the results off to the external program? |
| 20:24 |
|
twb |
It creates four temporary files. |
| 20:24 |
|
twb |
The first three contain the files to merge, the fourth is the output file which the external program writes to. |
| 20:25 |
|
twb |
It's described in section 6.1 |
| 20:25 |
|
malsyned |
cool, thanks |
| 23:38 |
|
twb |
I know I really shouldn't be doing this, but is there a kluge to change a patch name, without obliterating it and recording it again? |
| 23:39 |
|
twb |
FSVO recording it again = recording a new patch that happens to modify files in a remarkably similar way |
| 23:45 |
|
Igloo |
twb: No |
| 23:50 |
|
twb |
It turns out I recorded a silly patch name waaaay back, and I don't want to have to unrecord and re-record all the patches it depends on, because that will change their timestamps. |
| 23:53 |
|
twb |
I'm doing a bit of a hack, you see, to avoid needing a separate repository for a bunch of single-file projects. Instead, I put them all in one repo and make sure to never record a patch which modifies multiple files, and always begin the patch name with the name of the modified file. |
| 23:53 |
|
twb |
Then, if I need to break one of the projects out of the hack repo and put it in its own repo, it's simply a matter of pulling with -p ^filename. |
| 23:54 |
|
twb |
Unfortunately, a couple of the really old original patches predate this Grand Scheme, and so have names "Added foo." instead of "foo: added." |
| 23:59 |
|
twb |
More accurately, I write patch names according the the GNU Coding Standards, and I select patches with -p '^FILENAME( \([^)]+\))?: ' |