C-Mike, this is mostly for your benefit.
Issue #582 is real close now, but I'm hoping for a tandem debugging
session tomorrow morning. This mail is for you to play with the
bug(s) on the train if you wish :-).
How to use this reproduction recipe:
First, run "make check", so you get the repository directory
subversion/tests/clients/cmdline/repositories/basic_tests-1/, which
the reproduction script depends on.
Next, apply this patch and rebuild subversion:
Index: ./subversion/svnlook/main.c
===================================================================
--- ./subversion/svnlook/main.c
+++ ./subversion/svnlook/main.c Tue May 7 19:52:00 2002
@@ -147,7 +147,7 @@
But don't do it yet, unless you're debugging, since not all cases
are handled perfectly a.t.m. */
SVN_ERR (svn_repos_dir_delta (base_root, "", NULL, src_revs, root, "",
- editor, edit_baton, FALSE, TRUE, FALSE, FALSE,
+ editor, edit_baton, FALSE, TRUE, FALSE, TRUE,
edit_pool));
/* Return the tree we just built. */
That turns on copyfrom history in svnlook. Finally, put this shell
script in the top level of your working copy and run it. Everything
should be pretty self-explanatory after that; review revision 1902
as well, I guess.
copy-mess.sh:
--------------------8-<-------cut-here---------8-<-----------------------
#!/bin/sh
DOT=`pwd`
SVN=${DOT}/subversion/clients/cmdline/svn
SVNLOOK=${DOT}/subversion/svnlook/svnlook
rm -rf REPO WC
cp -a
${DOT}/subversion/tests/clients/cmdline/repositories/basic_tests-1
./REPO
${SVN} co file://${DOT}/REPO -d WC
# Make a tree copy, with a couple of easy mods.
cd WC
${SVN} cp A Y
echo "" >> Y/B/lambda
echo "Change to lambda in Y." >> Y/B/lambda
echo "" >> Y/D/G/rho
echo "Change to rho in Y." >> Y/D/G/rho
${SVN} commit -m "Copy A to Y, with mods to lambda and rho."
cd ..
# Diff the copy.
echo ""
echo "This diff of revision 2 should succeed:"
echo ""
${SVNLOOK} REPO rev 2 diff
echo ""
echo "The above diff of revision 2 should have succeeded."
echo ""
# Make a bunch of tree copies, with one mod.
cd WC/A/D/G
${SVN} cp pi new_pi
cd ../../..
${SVN} cp A/D/H ./new-H
${SVN} cp A/D/G/rho Y/new-rho
${SVN} cp A/D/G/tau Y/B/new-tau
echo "" >> Y/B/new-tau
echo "Change to new-tau." >> Y/B/new-tau
${SVN} commit -m "Various copies, with a mod to Y/B/new-tau."
cd ..
# Diff this more complex copy.
echo ""
echo "This diff of revision 3 does not succeed:"
echo ""
${SVNLOOK} REPO rev 3 diff
echo ""
echo "The above diff of revision 3 did not succeed."
echo ""
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed May 8 06:21:08 2002