By default, darcs creates a "normal" formatted diff. This format cannot
handle multiple files per patch.
The following test case outlines the problem:
darcs init
touch a && touch b
darcs add a b
darcs record -a -m 'add a and b'
echo "test a" > a
echo "test b" > b
darcs diff > addlines.patch
darcs revert -a
patch -s a < addlines.patch
cat a
Say we weren't careful, and didn't notice that b had been changed; when
we apply the patch, we might clobber the intended contents of a (in this
case, a receives the changes from a and b).
Using a unified format diff, (and removing the filename from the `patch`
invocation) works as expected.
|