Mercurial > hg
annotate tests/test-push-checkheads-unpushed-D5.t @ 33299:41448fc51510
sparse: variable to track if sparse is enabled
Currently, the sparse extension sniffs repo instances for
attributes defined by the sparse extension to determine if
sparse is enabled. As we move code away from repo instances,
these checks will be a bit more brittle.
We introduce a module-level variable to track whether sparse is
enabled as a temporary workaround.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 06 Jul 2017 12:06:37 -0700 |
parents | 53b3a1968aa6 |
children | b11e8c67fb0f |
rev | line source |
---|---|
32017
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
1 ==================================== |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
2 Testing head checking code: Case D-5 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
3 ==================================== |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
4 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
5 Mercurial checks for the introduction of new heads on push. Evolution comes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
6 into play to detect if existing branches on the server are being replaced by |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
7 some of the new one we push. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
8 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
9 This case is part of a series of tests checking this behavior. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
10 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
11 Category D: remote head is "obs-affected" locally, but result is not part of the push |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
12 TestCase 5: multi-changeset branch, split on multiple other, (head on its own new branch) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
13 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
14 .. old-state: |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
15 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
16 .. * 2 branch (1 changeset, and 2 changesets) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
17 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
18 .. new-state: |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
19 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
20 .. * 1 new branch superceeding the head of the old-2-changesets-branch, |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
21 .. * 1 new changesets on the old-1-changeset-branch superceeding the base of the other |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
22 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
23 .. expected-result: |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
24 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
25 .. * push the new branch only -> push denied |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
26 .. * push the existing branch only -> push allowed |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
27 .. /!\ This push create unstability/orphaning on the other hand and we should |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
28 .. probably detect/warn agains that. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
29 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
30 .. graph-summary: |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
31 .. |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
32 .. B ø⇠◔ B' |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
33 .. | | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
34 .. A'◔⇢ø | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
35 .. | |/ |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
36 .. C ● | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
37 .. \| |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
38 .. ● |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
39 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
40 $ . $TESTDIR/testlib/push-checkheads-util.sh |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
41 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
42 Test setup |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
43 ---------- |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
44 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
45 $ mkdir D5 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
46 $ cd D5 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
47 $ setuprepos |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
48 creating basic server and client repo |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
49 updating to branch default |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
50 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
51 $ cd server |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
52 $ mkcommit B0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
53 $ hg up 0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
54 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
55 $ mkcommit C0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
56 created new head |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
57 $ cd ../client |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
58 $ hg pull |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
59 pulling from $TESTTMP/D5/server (glob) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
60 searching for changes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
61 adding changesets |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
62 adding manifests |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
63 adding file changes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
64 added 2 changesets with 2 changes to 2 files (+1 heads) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
65 (run 'hg heads' to see heads, 'hg merge' to merge) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
66 $ hg up 'desc(C0)' |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
67 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
68 $ mkcommit A1 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
69 $ hg up 0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
70 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
71 $ mkcommit B1 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
72 created new head |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
73 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"` |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
74 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"` |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
75 $ hg log -G --hidden |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
76 @ 25c56d33e4c4 (draft): B1 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
77 | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
78 | o a0802eb7fc1b (draft): A1 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
79 | | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
80 | o 0f88766e02d6 (draft): C0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
81 |/ |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
82 | x d73caddc5533 (draft): B0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
83 | | |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
84 | x 8aaa48160adc (draft): A0 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
85 |/ |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
86 o 1e4be0697311 (public): root |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
87 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
88 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
89 Actual testing |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
90 -------------- |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
91 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
92 $ hg push --rev 'desc(B1)' |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
93 pushing to $TESTTMP/D5/server (glob) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
94 searching for changes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
95 abort: push creates new remote head 25c56d33e4c4! |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
96 (merge or see 'hg help push' for details about pushing new heads) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
97 [255] |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
98 $ hg push --rev 'desc(A1)' |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
99 pushing to $TESTTMP/D5/server (glob) |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
100 searching for changes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
101 adding changesets |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
102 adding manifests |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
103 adding file changes |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
104 added 1 changesets with 1 changes to 1 files |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
105 1 new obsolescence markers |
33252
53b3a1968aa6
obsolete: reports the number of local changeset obsoleted when unbundling
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
32017
diff
changeset
|
106 obsoleted 1 changesets |
32017
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
107 |
9f7ba0daada1
obsolescence: add test for the "branch replacement" logic during push, case D5
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
108 $ cd ../.. |