[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r33855 - in branches/tree-conflicts-notify/subversion: include libsvn_client libsvn_wc svn tests/cmdline tests/cmdline/svntest

From: Neels J. Hofmeyr <neels_at_elego.de>
Date: Thu, 23 Oct 2008 16:01:41 +0200

Greg Stein wrote:
> On Thu, Oct 23, 2008 at 4:19 AM, Neels J Hofmeyr <neels_at_elego.de> wrote:
>> ...
>> Is it safe to move the branches/tree-conflicts-notify to patches/ once it's
>> agreed or am I likely to run into problems as the one I just reposted? :P
>> http://subversion.tigris.org/servlets/ReadMsg?listName=dev&msgNo=144469
>
> It *should* be safe. Whether svn works properly or not is a different
> question, and a bug for us to fix (imo). Renames like that should Just
> Work.
>
> That said: I don't know enough about what happened with your prior
> move, or why this might not work (if it is broken at all).

Hm, interesting -- I can't reproduce it when running a standalone recipe on
trunk, but when doing the following, using svn compiled from trunk:

  cd ~/trunk/subversion/tests/cmdline
  svn log -r 31016

, the log is empty, although it should show the original creation log of the
file subversion/tests/cmdline/tree_conflict_tests.txt (moved from
notes/tree-conflicts/testing.txt). When doing the same a couple dirs up:

  cd ~/trunk
  svn log -r 31016

, the log message shows correctly. This only happens with log -r <rev>, not
with log <filename>.

Might there be something wrong with the information stored in our svn repos
due to use of an older client at the time of the move? Or something?

I'm pretty sure that the results of above example must be wrong. It persists
on trunk but can't be reproduced separately, apparently. It can't be related
to using the http:// protocol, can it? (Attaching test recipe)

~Neels

-- 
Neels Hofmeyr -- elego Software Solutions GmbH
Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23458696  mobile: +49 177 2345869  fax: +49 30 23458695
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelsreg: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194

#!/bin/sh

# The next line is the only line you should need to adjust.
SVNDIR=/arch/elego/svn/trunk

## GENERIC PREPARATIONS

SVN=${SVNDIR}/subversion/svn/svn
SVNSERVE=${SVNDIR}/subversion/svnserve/svnserve
SVNADMIN=${SVNDIR}/subversion/svnadmin/svnadmin

# use my local way if my script is there (neels).
if [ -f /usr/local/bin/superpower ]; then
  echo "##### REMEMBER TO SETUP YOUR ENVIRONMENT #####"
  SVN=svn
  SVNSERVE=svnserve
  SVNADMIN=svnadmin
fi

${SVN} --version

# Select an access method. If svn://, the svnserve setup is
# handled automagically by this script; but if http://, then
# you'll have to configure it yourself first.
#
# URL=http://localhost/neels/repos
# URL=svn://localhost/repos
URL=file:///`pwd`/repos

rm -rf repos wc

${SVNADMIN} create repos

# These are for svnserve only.
echo "[general]" > repos/conf/svnserve.conf
echo "anon-access = write" >> repos/conf/svnserve.conf
echo "auth-access = write" >> repos/conf/svnserve.conf

# The server will only be contacted if $URL is svn://foo, of course.
${SVNSERVE} --pid-file svnserve-pid -d -r `pwd`
# And put the kill command in a file, in case need to run it manually.
echo "kill -9 `cat svnserve-pid`" > k
chmod a+rwx k

${SVN} co -q ${URL} wc

cd wc

## ACTUAL TEST

echo "===== creating rev 1"
mkdir original_dir
mkdir moved_to_dir
echo "file" > original_dir/original_file
    
${SVN} add original_dir moved_to_dir

${SVN} ci -m "This is the log message I want to see."

echo "===== moving file"

${SVN} mv original_dir/original_file moved_to_dir/moved_file
${SVN} ci -m "moving"
${SVN} up .

echo "===== checking logs"
set -x
cd moved_to_dir
${SVN} log moved_file
${SVN} log -r 1
cd ..
${SVN} log moved_to_dir/moved_file
${SVN} log -r 1

## ACTUAL TEST ENDS
echo "====="
cd ..

./k

Received on 2008-10-23 16:02:32 CEST

This is an archived mail posted to the Subversion Dev mailing list.