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

Re: svn log -g doesn't return merge info when operating against repository root

From: Henrik Carlqvist <hc528_at_poolhem.se>
Date: Wed, 4 Dec 2013 20:50:22 +0100

On Wed, 25 Jul 2012 11:17:55 -0500
Justin Johnson <justin_at_justinjohnson.io> wrote:

> The command "svn log -vg" is not returning merge info when I execute
> the command while sitting in a working copy of the root level of a
> repository or when I pass in the URL to the root level of root level
> on the command line. A simple test case can be seen below.

Sorry for my reply to a really old post, but it seems as if no one else
has replied and this problem also seems to still be there.

> echo "## Create repo ##"
> svnadmin create repo
>
> echo "## Add initial project ##"
> svn co file://`pwd`/repo wc
> cd wc
> mkdir -p p/trunk p/branches
> echo hi > p/trunk/file.txt
> svn add p
> svn ci -m "initial import"
>
> echo "## Copy trunk to A and make changes ##"
> svn cp p/trunk p/branches/A
> svn ci -m "Create branch A"
> echo hello >> p/branches/A/file.txt
> svn ci -m "Changes on A"
> svn up
>
> echo "## Merge A to trunk ##"
> cd p/trunk
> svn merge "^/p/branches/A"
> svn ci -m "Commit merge results"
> svn up
>
> echo "## Log from WC - trunk ##"
> svn log -vg
> cd ../..
>
> echo "## Log from WC - repo root ##"
> svn log -vg
> cd ..
>
> echo "## Log from URL - repo root ##"
> svn log -vg file://`pwd`/repo

However, this problem has not allways been like this, it seems as if this
bug came 2012. When I try an older version of svn it works as expected.
This is the output from 1.6.16:

-8<-------------------------------
minotaur:/tmp> svn --version
svn, version 1.6.16 (r1073529)
   compiled Mar 9 2011, 19:14:47

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.apache.org/
This product includes software developed by CollabNet
(http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using
Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network
protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme

minotaur:/tmp> echo "## Create repo ##"
## Create repo ##
minotaur:/tmp> svnadmin create repo
minotaur:/tmp>
minotaur:/tmp> echo "## Add initial project ##"
## Add initial project ##
minotaur:/tmp> svn co file://`pwd`/repo wc
Checked out revision 0.
minotaur:/tmp> cd wc
minotaur:/tmp/wc> mkdir -p p/trunk p/branches
minotaur:/tmp/wc> echo hi > p/trunk/file.txt
minotaur:/tmp/wc> svn add p
A p
A p/trunk
A p/trunk/file.txt
A p/branches
minotaur:/tmp/wc> svn ci -m "initial import"
Adding p
Adding p/branches
Adding p/trunk
Adding p/trunk/file.txt
Transmitting file data .
Committed revision 1.
minotaur:/tmp/wc>
minotaur:/tmp/wc> echo "## Copy trunk to A and make changes ##"
## Copy trunk to A and make changes ##
minotaur:/tmp/wc> svn cp p/trunk p/branches/A
A p/branches/A
minotaur:/tmp/wc> svn ci -m "Create branch A"
Adding p/branches/A

Committed revision 2.
minotaur:/tmp/wc> echo hello >> p/branches/A/file.txt
minotaur:/tmp/wc> svn ci -m "Changes on A"
Sending p/branches/A/file.txt
Transmitting file data .
Committed revision 3.
minotaur:/tmp/wc> svn up
At revision 3.
minotaur:/tmp/wc>
minotaur:/tmp/wc> echo "## Merge A to trunk ##"
## Merge A to trunk ##
minotaur:/tmp/wc> cd p/trunk
minotaur:/tmp/wc/p/trunk> svn merge "^/p/branches/A"
--- Merging r2 through r3 into '.':
U file.txt
minotaur:/tmp/wc/p/trunk> svn ci -m "Commit merge results"
Sending trunk
Sending trunk/file.txt
Transmitting file data .
Committed revision 4.
minotaur:/tmp/wc/p/trunk> svn up
At revision 4.
minotaur:/tmp/wc/p/trunk>
minotaur:/tmp/wc/p/trunk> echo "## Log from WC - trunk ##"
## Log from WC - trunk ##
minotaur:/tmp/wc/p/trunk> svn log -vg
------------------------------------------------------------------------
r4 | henca | 2013-12-04 19:46:17 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/trunk
   M /p/trunk/file.txt

Commit merge results
------------------------------------------------------------------------
r3 | henca | 2013-12-04 19:46:14 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/branches/A/file.txt
Merged via: r4

Changes on A
------------------------------------------------------------------------
r2 | henca | 2013-12-04 19:46:13 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p/branches/A (from /p/trunk:1)
Merged via: r4

Create branch A
------------------------------------------------------------------------
r1 | henca | 2013-12-04 19:46:11 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p
   A /p/branches
   A /p/trunk
   A /p/trunk/file.txt

initial import
------------------------------------------------------------------------
minotaur:/tmp/wc/p/trunk> cd ../..
minotaur:/tmp/wc>
minotaur:/tmp/wc> echo "## Log from WC - repo root ##"
## Log from WC - repo root ##
minotaur:/tmp/wc> svn log -vg
------------------------------------------------------------------------
r3 | henca | 2013-12-04 19:46:14 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/branches/A/file.txt

Changes on A
------------------------------------------------------------------------
r2 | henca | 2013-12-04 19:46:13 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p/branches/A (from /p/trunk:1)

Create branch A
------------------------------------------------------------------------
r1 | henca | 2013-12-04 19:46:11 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p
   A /p/branches
   A /p/trunk
   A /p/trunk/file.txt

initial import
------------------------------------------------------------------------
minotaur:/tmp/wc> cd ..
minotaur:/tmp>
minotaur:/tmp> echo "## Log from URL - repo root ##"
## Log from URL - repo root ##
minotaur:/tmp> svn log -vg file://`pwd`/repo
------------------------------------------------------------------------
r4 | henca | 2013-12-04 19:46:17 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/trunk
   M /p/trunk/file.txt

Commit merge results
------------------------------------------------------------------------
r3 | henca | 2013-12-04 19:46:14 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/branches/A/file.txt
Merged via: r4

Changes on A
------------------------------------------------------------------------
r2 | henca | 2013-12-04 19:46:13 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p/branches/A (from /p/trunk:1)
Merged via: r4

Create branch A
------------------------------------------------------------------------
r3 | henca | 2013-12-04 19:46:14 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   M /p/branches/A/file.txt

Changes on A
------------------------------------------------------------------------
r2 | henca | 2013-12-04 19:46:13 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p/branches/A (from /p/trunk:1)

Create branch A
------------------------------------------------------------------------
r1 | henca | 2013-12-04 19:46:11 +0100 (Wed, 04 Dec 2013) | 1 line
Changed paths:
   A /p
   A /p/branches
   A /p/trunk
   A /p/trunk/file.txt

initial import
------------------------------------------------------------------------
-8<-------------------------------

With my old version of svn the "Merged via: r4" are there both when
looking at trunk and the repository root. With newer versions of svn the
"Merged via: r4" are lost when looking at repository root.

regards Henrik
Received on 2013-12-04 20:50:56 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.