Mercurial > hg
annotate tests/test-mq-qgoto.t @ 21566:a01988cd9b61 stable
subrepo: make "_sanitize()" take absolute path to the root of subrepo
Before this patch, "hg update" doesn't sanitize ".hg/hgrc" in non-hg
subrepos correctly, if "hg update" is executed not at the root of the
parent repository.
"_sanitize()" takes relative path to subrepo from the root of the
parent repository, and passes it to "os.walk()". In this case,
"os.walk()" expects CWD to be equal to the root of the parent
repository.
So, "os.walk()" can't find specified path (or may scan unexpected
path), if CWD isn't equal to the root of the parent repository.
Non-hg subrepo under nested hg-subrepos may cause same problem, too:
CWD may be equal to the root of the outer most repository, or so.
This patch makes "_sanitize()" take absolute path to the root of
subrepo to sanitize correctly in such cases.
This patch doesn't normalize the path to hostile files as the one
relative to CWD (or the root of the outer most repository), to fix the
problem in the simple way suitable for "stable".
Normalizing should be done in the future: maybe as a part of the
migration to vfs.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Thu, 08 May 2014 19:03:00 +0900 |
parents | de99de39ba28 |
children | bbf544b5f2e9 |
rev | line source |
---|---|
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
1 $ echo "[extensions]" >> $HGRCPATH |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
2 $ echo "mq=" >> $HGRCPATH |
4432 | 3 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
4 $ hg init a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
5 $ cd a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
6 $ echo a > a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
7 $ hg ci -Ama |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
8 adding a |
4432 | 9 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
10 $ hg qnew a.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
11 $ echo a >> a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
12 $ hg qrefresh |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
13 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
14 $ hg qnew b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
15 $ echo b > b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
16 $ hg add b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
17 $ hg qrefresh |
4432 | 18 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
19 $ hg qnew c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
20 $ echo c > c |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
21 $ hg add c |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
22 $ hg qrefresh |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
23 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
24 $ hg qgoto a.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
25 popping c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
26 popping b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
27 now at: a.patch |
4432 | 28 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
29 $ hg qgoto c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
30 applying b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
31 applying c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
32 now at: c.patch |
4432 | 33 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
34 $ hg qgoto b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
35 popping c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
36 now at: b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
37 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
38 Using index: |
4432 | 39 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
40 $ hg qgoto 0 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
41 popping b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
42 now at: a.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
43 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
44 $ hg qgoto 2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
45 applying b.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
46 applying c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
47 now at: c.patch |
7568
12df451ce205
mq: don't warn about ambiguous patch name when using patch index (issue1439)
Jason Orendorff <jorendorff@mozilla.com>
parents:
4432
diff
changeset
|
48 |
18342
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
49 No warnings when using index ... and update from non-qtip and with pending |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
50 changes in unrelated files: |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
51 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
52 $ hg qnew bug314159 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
53 $ echo d >> c |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
54 $ hg qrefresh |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
55 $ hg qnew bug141421 |
18342
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
56 $ echo e >> b |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
57 $ hg qrefresh |
7568
12df451ce205
mq: don't warn about ambiguous patch name when using patch index (issue1439)
Jason Orendorff <jorendorff@mozilla.com>
parents:
4432
diff
changeset
|
58 |
18342
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
59 $ hg up -r bug314159 |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
60 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
61 $ echo f >> a |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
62 $ echo f >> b |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
63 $ echo f >> c |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
64 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
65 $ hg qgoto 1 |
18342
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
66 abort: local changes found, refresh first |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
67 [255] |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
68 $ hg qgoto 1 -f |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
69 popping bug141421 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
70 popping bug314159 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
71 popping c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
72 now at: b.patch |
18342
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
73 $ hg st |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
74 M a |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
75 M b |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
76 ? c.orig |
de99de39ba28
mq: fix qpop of working directory parent patch when not at qtip
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
77 $ hg up -qCr. |
7568
12df451ce205
mq: don't warn about ambiguous patch name when using patch index (issue1439)
Jason Orendorff <jorendorff@mozilla.com>
parents:
4432
diff
changeset
|
78 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
79 $ hg qgoto 3 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
80 applying c.patch |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
81 applying bug314159 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
82 now at: bug314159 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
83 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
84 Detect ambiguous non-index: |
7568
12df451ce205
mq: don't warn about ambiguous patch name when using patch index (issue1439)
Jason Orendorff <jorendorff@mozilla.com>
parents:
4432
diff
changeset
|
85 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
86 $ hg qgoto 14 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
87 patch name "14" is ambiguous: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
88 bug314159 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
89 bug141421 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
90 abort: patch 14 not in series |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
91 [255] |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
7568
diff
changeset
|
92 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
12324
diff
changeset
|
93 $ cd .. |