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

Re: Bug: Properties are lost in merges between repositories

From: Tobias Bading <tbading_at_web.de>
Date: Sun, 28 Mar 2010 07:43:02 +0200

Hi Daniel,

on 27.03.2010, at 19:00, Daniel Shahaf wrote:
> Tobias Bading wrote on Sat, 27 Mar 2010 at 15:11 +0100:
>> Please see the attached reproduction script for an example.
>
> Forgotten/Stripped attachment?

No idea what the mailing list program did to my attachment.
Or maybe the attachment was blocked by a rampaging virus scanner?
Anyway, here's the attachment "properties-awol.sh" inline:

#!/bin/sh

##############################################################################
## ##
## Script to reproduce a bug where properties are lost in merges ##
## between two repositories. ##
## ##
##############################################################################

SVN=`which svn`
SVNADMIN=`which svnadmin`

URL1=file:///`pwd`/repos1
URL2=file:///`pwd`/repos2

rm -rf repos1 repos2 wc1 wc2 import-me

${SVNADMIN} create repos1
${SVNADMIN} create repos2

# setting up the first repository:

echo ""
echo "### Checking out working copy of first empty repository..."
${SVN} co -q ${URL1} wc1
echo ""

echo "### Creating file 'configure' and assigning properties..."
echo "echo This sucks..." > wc1/configure
chmod 755 wc1/configure
${SVN} add -q wc1/configure
${SVN} propset -q svn:eol-style native wc1/configure
echo ""

echo "### Properties of file 'configure' in first working copy:"
${SVN} proplist -v wc1/configure
echo ""

echo "### Commiting changes to first repository..."
${SVN} ci -m "file configure added" wc1
echo ""

echo "### Properties of file 'configure' in first repository:"
echo "### (svn:executable and svn:eol-style should be set and are indeed set)"
${SVN} proplist -v ${URL1}/configure
echo ""

# merging into a working copy of the second repository:

echo "### Checking out working copy of second empty repository..."
${SVN} co -q ${URL2} wc2
echo ""

echo "### Merging r1 of first repository into working copy of second repository..."
${SVN} merge -c 1 ${URL1} wc2
echo ""

echo "### Properties of file 'configure' in second working copy:"
${SVN} proplist -v wc2/configure
echo ""

echo "### Commiting changes to second repository..."
${SVN} ci -m "r1 merged" wc2
echo ""

echo "### Properties of file 'configure' in second working copy after the commit:"
${SVN} proplist -v wc2/configure
echo ""

echo "### Properties of file 'configure' in second repository:"
echo "### (svn:executable and svn:eol-style should be set but are NOT)"
${SVN} proplist -v ${URL2}/configure
echo ""

echo "### Diff of r1 in second repository:"
echo "### (should show property changes but does NOT)"
${SVN} diff -c 1 ${URL2}
echo ""
Received on 2010-03-28 07:43:41 CEST

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