[darcs-users] recording complex changes

Peter Maxwell peter.maxwell at anu.edu.au
Sat Nov 29 12:39:16 UTC 2003


Strange things happen when I try to do a moderately large rearrangement 
of my source tree (new directories, several files changed and/or moved) 
with one 'darcs record'.  The workaround seems to be to break it up 
into smaller steps, but that means using --no-test and recording 
intermediate non-functioning versions.  Here's a test case:

#!/bin/sh
T=`TMPDIR=$PWD mktemp -d`
echo $T
cd $T
set -e
darcs inittree
echo text > afile.txt
darcs add afile.txt
darcs record --all --no-test --patch-name init
mkdir d
darcs add d
mkdir d/e
darcs add d/e
darcs mv afile.txt d/e/afile.txt
echo altered_text > d/e/afile.txt
darcs record --all --no-test --patch-name confusion
echo
diff -q ./ ./_darcs/current/ | grep -v '_darcs$' | grep -v '^Common'
echo
yes | darcs unrecord

output:

~/dexp/tmp.sJPPGb1FDK
Successfully initialized tree!
Finished recording patch 'init'
Finished recording patch 'confusion'

Only in ./_darcs/current/: afile.txt

[confusion
peter.maxwell at anu.edu.au**20031129121014]
Shall I unrecord this patch? [yN?]
Unable to apply inverse patch!


I've also encountered "Yikes, pending has conflicts!" while doing this 
sort of thing, but I haven't come up with a reproducible test case yet. 
  If you end up unable to unrecord ("Unable to apply inverse patch!") 
and unable to record ("Yikes, pending has conflicts!") at the same time 
you can't go forwards or back!

  -- Peter Maxwell





More information about the darcs-users mailing list