view tests/test-issue672.out @ 11109:a2bc2f2d77a9

subrepo: normalize path part of URLs so that pulling subrepos from webdir works For a "all projects at root" repo layout eg: /main /sub Where subrepos are used such that a clone of main has this layout: ./main/ ./main/.hgsub ./main/sub/ And the .hgsub content is: sub = ../sub This allows a pull from a hgweb where main and sub are exposed at the root (or same directory level) The current code doesn't normalize the path component of a pull url. this results in trying to pull from http://server.com/hg/main/../sub Current hgweb implementation doesn't reduce the path component so this results in a 404 error though everything is setup logically. This patch adresses this 404 error on the puller side normalizing the URLs used for pulling sub repos. For this example, the URL would be reduced to http://server.com/hg/sub Fix + test
author Edouard Gomez <ed.gomez@free.fr>
date Sat, 01 May 2010 23:05:19 +0200
parents f2618cacb485
children db426935fa94
line wrap: on
line source

adding 1
adding 2
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
created new head
  searching for copies back to rev 1
  unmatched files in other:
   1a
  all copies found (* = to merge, ! = divergent):
   1a -> 1 
  checking for directory renames
resolving manifests
 overwrite None partial False
 ancestor 81f4b099af3d local c64f439569a9+ remote c12dcd37c90a
 1: other deleted -> r
 1a: remote created -> g
update: 1 1/2 files (50.00%)
removing 1
update: 1a 2/2 files (100.00%)
getting 1a
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
(branch merge, don't forget to commit)
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
created new head
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
  searching for copies back to rev 1
  unmatched files in local:
   1a
  all copies found (* = to merge, ! = divergent):
   1a -> 1 *
  checking for directory renames
resolving manifests
 overwrite None partial False
 ancestor c64f439569a9 local e327dca35ac8+ remote 746e9549ea96
 1a: local copied/moved to 1 -> m
preserving 1a for resolve of 1a
update: 1a 1/1 files (100.00%)
picked tool 'internal:merge' for 1a (binary False symlink False)
merging 1a and 1 to 1a
my 1a@e327dca35ac8+ other 1@746e9549ea96 ancestor 1@81f4b099af3d
 premerge successful
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
  searching for copies back to rev 1
  unmatched files in other:
   1a
  all copies found (* = to merge, ! = divergent):
   1a -> 1 *
  checking for directory renames
resolving manifests
 overwrite None partial False
 ancestor c64f439569a9 local 746e9549ea96+ remote e327dca35ac8
 1: remote moved to 1a -> m
preserving 1 for resolve of 1a
removing 1
update: 1 1/1 files (100.00%)
picked tool 'internal:merge' for 1a (binary False symlink False)
merging 1 and 1a to 1a
my 1a@746e9549ea96+ other 1a@e327dca35ac8 ancestor 1@81f4b099af3d
 premerge successful
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)