Bug 2968 - svn subrepo update fails on branch subdir
Summary: svn subrepo update fails on branch subdir
Status: RESOLVED FIXED
Alias: None
Product: Mercurial
Classification: Unclassified
Component: Mercurial (show other bugs)
Version: unspecified
Hardware: All All
: normal bug
Assignee: Bugzilla
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-23 13:27 UTC by Eli Carter
Modified: 2012-07-29 14:56 UTC (History)
6 users (show)

See Also:
Python Version: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eli Carter 2011-08-23 13:27 UTC
Point to a subdirectory of a copied directory which has not been modified
since the copy.  Subversion shows the last changed revision as a revision
before the url existed.

1) svn mkdir ^/trunk/asubdir
2) svn copy ^/trunk ^/branches/xyz
3) echo "mysub = [svn] .../branches/xyz/asubdir" > .hgsub
4) svn co .../branches/xyz/asubdir mysub
5) hg commit
6) hg up -r-2 && hg up
path doesn't exist, because the revision is the 'last changed' revision
instead of the current revision.
Comment 1 Patrick Mézard 2012-04-30 09:40 UTC
Fix submitted here:

  http://selenic.com/pipermail/mercurial-devel/2012-April/039594.html

Thank you for the report.
Comment 2 HG Bot 2012-04-30 16:00 UTC
Fixed by http://selenic.com/repo/hg/rev/ae2664ee0223
Patrick Mezard <patrick@mezard.eu>
subrepo/svn: fix checked out rev number retrieval (issue2968)

(please test the fix)
Comment 3 Bugzilla 2012-05-12 09:22 UTC

--- Bug imported by bugzilla@serpentine.com 2012-05-12 09:22 EDT  ---

This bug was previously known as _bug_ 2968 at http://mercurial.selenic.com/bts/issue2968

Bug Status was UNCONFIRMED but everconfirmed was true
   Setting status to CONFIRMED

Comment 4 Thomas Arendsen Hein 2012-06-26 06:44 UTC
With svn 1.6.12 tests run fine, but with 1.5.1 the following error occurs:

--- /home/hg/crew-stable/tests/test-subrepo-svn.t
+++ /home/hg/crew-stable/tests/test-subrepo-svn.t.err
@@ -596,10 +596,10 @@
   $ echo "subdir = [svn] $SVNREPO/branches/somebranch/subdir" > .hgsub
   $ hg add .hgsub
   $ hg ci -m addsub
+  file://$TESTTMP/svn-repo/branches/somebranch/subdir@14:  (Not a valid URL)
   $ hg up null
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ hg up
-  A    *subdir/a (glob)
-  Checked out revision 15.
-  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ cd ..
+  abort: svn: URL 'file://$TESTTMP/svn-repo/branches/somebranch/subdir' doesn't exist
+  [255]
+  $ cd ..
Comment 5 Thomas Arendsen Hein 2012-06-26 07:10 UTC
The problem is caused "svn info" returning exit code 0 with subversion 1.5.1
Comment 6 Thomas Arendsen Hein 2012-06-26 08:50 UTC
Using svn list instead of svn info is the solution.

Fix pushed to crew-stable and merged to crew:

http://hg.intevation.org/mercurial/crew/rev/ba0286e149aa
changeset:   17035:ba0286e149aa
branch:      stable
user:        Thomas Arendsen Hein <thomas@intevation.de>
date:        Tue Jun 26 14:27:33 2012 +0200
summary:     subrepo/svn: make rev number retrieval compatible with svn 1.5 (issue2968)
Comment 7 Matt Mackall 2012-07-29 14:56 UTC
Fixed in 2.2.3 by:

ba0286e149aa subrepo/svn: make rev number retrieval compatible with svn 1.5