view tests/test-git-import.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 377d879e9d1b
children 77600d697d0e
line wrap: on
line source

% new file
applying patch from stdin
0:ae3ee40d2079
% new empty file
applying patch from stdin
1:ab199dc869b5
empty
% chmod +x
applying patch from stdin
2:3a34410f282e
% copy
applying patch from stdin
3:37bacb7ca14d
a
a
% rename
applying patch from stdin
4:47b81a94361d
copyx
empty
new
rename
% delete
applying patch from stdin
5:d9b001d98336
empty
new
rename
% regular diff
applying patch from stdin
6:ebe901e7576b
% copy and modify
applying patch from stdin
7:18f368958ecd
a
a
b
a
a
% rename and modify
applying patch from stdin
8:c32b0d7e6f44
a
a
b
c
a
% one file renamed multiple times
applying patch from stdin
9:034a6bf95330
9 rename2 rename3 rename3-2 / rename3 (rename2)rename3-2 (rename2)
rename3
rename3-2
a
a
b
c
a

a
a
b
c
a
% binary files and regular patch hunks
applying patch from stdin
11:c39bce63e786
foo
045c85ba38952325e126c70962cc0f9d9077bc67 644   binary
% many binary files
applying patch from stdin
12:30b530085242
045c85ba38952325e126c70962cc0f9d9077bc67 644   mbinary1
a874b471193996e7cb034bb301cac7bdaf3e3f46 644   mbinary2
% filenames with spaces
applying patch from stdin
13:04750ef42fb3
foo
% copy then modify the original file
applying patch from stdin
14:c4cd9cdeaa74
foo