annotate tests/test-subrepo-git.t @ 23411:2d86f4e38c08

subrepo: add status support for ignored files in git subrepos Retrieving the status of a git subrepo did not show ignored files. Using 'git ls-files', we can retrieve these files and display the correct status.
author Mathias De Maré <mathias.demare@gmail.com>
date Fri, 28 Nov 2014 20:16:15 +0100
parents d4c972b97fee
children 01a8dfc79cdc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21751
diff changeset
1 #require git
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
2
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
3 make git commits repeatable
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
4
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
5 $ echo "[core]" >> $HOME/.gitconfig
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
6 $ echo "autocrlf = false" >> $HOME/.gitconfig
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
7 $ GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
8 $ GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
9 $ GIT_AUTHOR_DATE='1234567891 +0000'; export GIT_AUTHOR_DATE
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
10 $ GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
11 $ GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
12 $ GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
13
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
14 root hg repo
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
15
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
16 $ hg init t
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
17 $ cd t
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
18 $ echo a > a
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
19 $ hg add a
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
20 $ hg commit -m a
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
21 $ cd ..
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
22
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
23 new external git repo
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
24
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
25 $ mkdir gitroot
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
26 $ cd gitroot
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
27 $ git init -q
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
28 $ echo g > g
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
29 $ git add g
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
30 $ git commit -q -m g
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
31
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
32 add subrepo clone
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
33
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
34 $ cd ../t
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
35 $ echo 's = [git]../gitroot' > .hgsub
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
36 $ git clone -q ../gitroot s
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
37 $ hg add .hgsub
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
38 $ hg commit -m 'new git subrepo'
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
39 $ hg debugsub
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
40 path s
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
41 source ../gitroot
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
42 revision da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
43
12995
d90fc91c8377 subrepo: update and merge works with any git branch
Eric Eisner <ede@mit.edu>
parents: 12994
diff changeset
44 record a new commit from upstream from a different branch
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
45
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
46 $ cd ../gitroot
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
47 $ git checkout -q -b testing
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
48 $ echo gg >> g
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
49 $ git commit -q -a -m gg
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
50
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
51 $ cd ../t/s
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
52 $ git pull -q >/dev/null 2>/dev/null
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
53 $ git checkout -q -b testing origin/testing >/dev/null
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
54
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
55 $ cd ..
13182
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
56 $ hg status --subrepos
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
57 M s/g
12992
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
58 $ hg commit -m 'update git subrepo'
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
59 $ hg debugsub
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
60 path s
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
61 source ../gitroot
2b73a3279a9f subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff changeset
62 revision 126f2a14290cd5ce061fdedc430170e8d39e1c5a
12993
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
63
13092
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
64 make $GITROOT pushable, by replacing it with a clone with nothing checked out
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
65
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
66 $ cd ..
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
67 $ git clone gitroot gitrootbare --bare -q
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
68 $ rm -rf gitroot
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
69 $ mv gitrootbare gitroot
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
70
12993
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
71 clone root
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
72
13092
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
73 $ cd t
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
74 $ hg clone . ../tc 2> /dev/null
12993
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
75 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
76 cloning subrepo s from $TESTTMP/gitroot
12993
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
77 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
78 $ cd ../tc
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
79 $ hg debugsub
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
80 path s
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
81 source ../gitroot
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
82 revision 126f2a14290cd5ce061fdedc430170e8d39e1c5a
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
83
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
84 update to previous substate
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
85
13111
560b8001f765 subrepo: silence git output when ui.quiet is set
Eric Eisner <ede@mit.edu>
parents: 13092
diff changeset
86 $ hg update 1 -q
12993
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
87 $ cat s/g
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
88 g
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
89 $ hg debugsub
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
90 path s
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
91 source ../gitroot
a91334380699 subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents: 12992
diff changeset
92 revision da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
93
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
94 clone root, make local change
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
95
13092
83986af605e5 test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents: 13091
diff changeset
96 $ cd ../t
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
97 $ hg clone . ../ta 2> /dev/null
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
98 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
99 cloning subrepo s from $TESTTMP/gitroot
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
100 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
101
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
102 $ cd ../ta
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
103 $ echo ggg >> s/g
13182
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
104 $ hg status --subrepos
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
105 M s/g
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14481
diff changeset
106 $ hg commit --subrepos -m ggg
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
107 committing subrepository s
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
108 $ hg debugsub
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
109 path s
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
110 source ../gitroot
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
111 revision 79695940086840c99328513acbe35f90fcd55e57
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
112
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
113 clone root separately, make different local change
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
114
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
115 $ cd ../t
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
116 $ hg clone . ../tb 2> /dev/null
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
117 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
118 cloning subrepo s from $TESTTMP/gitroot
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
119 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
120
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
121 $ cd ../tb/s
23411
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
122 $ hg status --subrepos
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
123 $ echo f > f
23411
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
124 $ hg status --subrepos
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
125 ? s/f
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
126 $ git add f
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
127 $ cd ..
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
128
13182
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
129 $ hg status --subrepos
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
130 A s/f
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14481
diff changeset
131 $ hg commit --subrepos -m f
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
132 committing subrepository s
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
133 $ hg debugsub
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
134 path s
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
135 source ../gitroot
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
136 revision aa84837ccfbdfedcdcdeeedc309d73e6eb069edc
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
137
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
138 user b push changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
139
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
140 $ hg push 2>/dev/null
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
141 pushing to $TESTTMP/t (glob)
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
142 pushing branch testing of subrepo s
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
143 searching for changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
144 adding changesets
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
145 adding manifests
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
146 adding file changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
147 added 1 changesets with 1 changes to 1 files
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
148
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
149 user a pulls, merges, commits
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
150
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
151 $ cd ../ta
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
152 $ hg pull
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
153 pulling from $TESTTMP/t (glob)
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
154 searching for changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
155 adding changesets
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
156 adding manifests
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
157 adding file changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
158 added 1 changesets with 1 changes to 1 files (+1 heads)
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
159 (run 'hg heads' to see heads, 'hg merge' to merge)
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
160 $ hg merge 2>/dev/null
21401
2c364f7801c8 subrepo: use subrepo shortid method to generate subrepo diverged promptchoice
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21024
diff changeset
161 subrepository s diverged (local revision: 7969594, remote revision: aa84837)
19811
5e10d41e7b9c merge: let the user choose to merge, keep local or keep remote subrepo revisions
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 19049
diff changeset
162 (M)erge, keep (l)ocal or keep (r)emote? m
13569
3ab3b892d223 subrepo: show the source that git pulls
Eric Eisner <ede@mit.edu>
parents: 13560
diff changeset
163 pulling subrepo s from $TESTTMP/gitroot
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
164 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
165 (branch merge, don't forget to commit)
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
166 $ cat s/f
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
167 f
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
168 $ cat s/g
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
169 g
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
170 gg
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
171 ggg
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14481
diff changeset
172 $ hg commit --subrepos -m 'merge'
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
173 committing subrepository s
13182
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
174 $ hg status --subrepos --rev 1:5
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
175 M .hgsubstate
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
176 M s/g
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
177 A s/f
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
178 $ hg debugsub
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
179 path s
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
180 source ../gitroot
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
181 revision f47b465e1bce645dbf37232a00574aa1546ca8d3
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
182 $ hg push 2>/dev/null
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
183 pushing to $TESTTMP/t (glob)
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
184 pushing branch testing of subrepo s
12994
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
185 searching for changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
186 adding changesets
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
187 adding manifests
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
188 adding file changes
845c602b8635 subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents: 12993
diff changeset
189 added 2 changesets with 2 changes to 1 files
12996
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
190
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
191 make upstream git changes
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
192
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
193 $ cd ..
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
194 $ git clone -q gitroot gitclone
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
195 $ cd gitclone
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
196 $ echo ff >> f
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
197 $ git commit -q -a -m ff
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
198 $ echo fff >> f
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
199 $ git commit -q -a -m fff
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
200 $ git push origin testing 2>/dev/null
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
201
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
202 make and push changes to hg without updating the subrepo
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
203
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
204 $ cd ../t
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
205 $ hg clone . ../td 2>&1 | egrep -v '^Cloning into|^done\.'
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
206 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
207 cloning subrepo s from $TESTTMP/gitroot
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
208 checking out detached HEAD in subrepo s
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
209 check out a git branch if you intend to make changes
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
210 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
211 $ cd ../td
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
212 $ echo aa >> a
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
213 $ hg commit -m aa
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
214 $ hg push
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
215 pushing to $TESTTMP/t (glob)
13029
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
216 searching for changes
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
217 adding changesets
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
218 adding manifests
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
219 adding file changes
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
220 added 1 changesets with 1 changes to 1 files
f930032aa6d5 subrepo: lazier git push logic
Eric Eisner <ede@mit.edu>
parents: 13027
diff changeset
221
13087
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
222 sync to upstream git, distribute changes
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
223
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
224 $ cd ../ta
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
225 $ hg pull -u -q
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
226 $ cd s
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
227 $ git pull -q >/dev/null 2>/dev/null
13087
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
228 $ cd ..
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
229 $ hg commit -m 'git upstream sync'
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
230 $ hg debugsub
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
231 path s
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
232 source ../gitroot
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
233 revision 32a343883b74769118bb1d3b4b1fbf9156f4dddc
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
234 $ hg push -q
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
235
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
236 $ cd ../tb
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
237 $ hg pull -q
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
238 $ hg update 2>/dev/null
13569
3ab3b892d223 subrepo: show the source that git pulls
Eric Eisner <ede@mit.edu>
parents: 13560
diff changeset
239 pulling subrepo s from $TESTTMP/gitroot
13087
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
240 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
241 $ hg debugsub
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
242 path s
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
243 source ../gitroot
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
244 revision 32a343883b74769118bb1d3b4b1fbf9156f4dddc
cca0779b4832 subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents: 13029
diff changeset
245
19013
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
246 create a new git branch
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
247
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
248 $ cd s
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
249 $ git checkout -b b2
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
250 Switched to a new branch 'b2'
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
251 $ echo a>a
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
252 $ git add a
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
253 $ git commit -qm 'add a'
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
254 $ cd ..
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
255 $ hg commit -m 'add branch in s'
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
256
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
257 pulling new git branch should not create tracking branch named 'origin/b2'
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
258 (issue3870)
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
259 $ cd ../td/s
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
260 $ git remote set-url origin $TESTTMP/tb/s
19049
2e5476980a57 subrepo: fix test breakage introduced in 2b34d004e644
Kevin Bullock <kbullock@ringworld.org>
parents: 19013
diff changeset
261 $ git branch --no-track oldtesting
19013
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
262 $ cd ..
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
263 $ hg pull -q ../tb
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
264 $ hg up
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
265 From $TESTTMP/tb/s
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
266 * [new branch] b2 -> origin/b2
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
267 Previous HEAD position was f47b465... merge
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
268 Switched to a new branch 'b2'
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
269 pulling subrepo s from $TESTTMP/tb/s
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
270 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2b34d004e644 subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents: 18109
diff changeset
271
12996
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
272 update to a revision without the subrepo, keeping the local git repository
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
273
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
274 $ cd ../t
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
275 $ hg up 0
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
276 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
13010
6bdae8ea0b48 test-subrepo-git.t: portability fix.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12996
diff changeset
277 $ ls -a s
12996
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
278 .
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
279 ..
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
280 .git
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
281
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
282 $ hg up 2
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
283 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
13010
6bdae8ea0b48 test-subrepo-git.t: portability fix.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12996
diff changeset
284 $ ls -a s
12996
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
285 .
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
286 ..
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
287 .git
3a42651b0a62 subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents: 12995
diff changeset
288 g
13027
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
289
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
290 archive subrepos
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
291
13091
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
292 $ cd ../tc
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
293 $ hg pull -q
8cecea387574 test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents: 13087
diff changeset
294 $ hg archive --subrepos -r 5 ../archive 2>/dev/null
13569
3ab3b892d223 subrepo: show the source that git pulls
Eric Eisner <ede@mit.edu>
parents: 13560
diff changeset
295 pulling subrepo s from $TESTTMP/gitroot
13027
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
296 $ cd ../archive
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
297 $ cat s/f
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
298 f
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
299 $ cat s/g
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
300 g
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
301 gg
7f2ecb64140d subrepo: archive git subrepos
Eric Eisner <ede@mit.edu>
parents: 13010
diff changeset
302 ggg
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
303
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
304 $ hg -R ../tc archive --subrepo -r 5 -X ../tc/**f ../archive_x 2>/dev/null
17114
ca75bd99f740 tests: ignore pax_global_header in test-subrepo-git.t
Mads Kiilerich <mads@kiilerich.com>
parents: 17108
diff changeset
305 $ find ../archive_x | sort | grep -v pax_global_header
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
306 ../archive_x
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
307 ../archive_x/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
308 ../archive_x/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
309 ../archive_x/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
310 ../archive_x/a
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
311 ../archive_x/s
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
312 ../archive_x/s/g
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17022
diff changeset
313
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
314 create nested repo
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
315
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
316 $ cd ..
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
317 $ hg init outer
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
318 $ cd outer
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
319 $ echo b>b
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
320 $ hg add b
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
321 $ hg commit -m b
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
322
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
323 $ hg clone ../t inner 2> /dev/null
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
324 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
325 cloning subrepo s from $TESTTMP/gitroot
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
326 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
327 $ echo inner = inner > .hgsub
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
328 $ hg add .hgsub
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
329 $ hg commit -m 'nested sub'
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
330
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
331 nested commit
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
332
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
333 $ echo ffff >> inner/s/f
13182
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
334 $ hg status --subrepos
2537bd17421d subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents: 13181
diff changeset
335 M inner/s/f
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14481
diff changeset
336 $ hg commit --subrepos -m nested
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
337 committing subrepository inner
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
338 committing subrepository inner/s (glob)
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
339
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
340 nested archive
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
341
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
342 $ hg archive --subrepos ../narchive
13296
5dda6c708138 Ignore pax_global_header that some tar versions write as a file.
Lee Cantey <lcantey@embarcadero.com>
parents: 13182
diff changeset
343 $ ls ../narchive/inner/s | grep -v pax_global_header
13181
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
344 f
413bef846806 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13111
diff changeset
345 g
13324
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
346
13460
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
347 relative source expansion
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
348
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
349 $ cd ..
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
350 $ mkdir d
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
351 $ hg clone t d/t 2> /dev/null
13460
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
352 updating to branch default
13525
c12088259f64 subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
353 cloning subrepo s from $TESTTMP/gitroot
13460
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
354 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
64bb8e586a92 subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents: 13428
diff changeset
355
13553
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
356 Don't crash if the subrepo is missing
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
357
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
358 $ hg clone t missing -q
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
359 $ cd missing
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
360 $ rm -rf s
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
361 $ hg status -S
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
362 $ hg sum | grep commit
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
363 commit: 1 subrepos
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
364 $ hg push -q
18109
9e3910db4e78 subrepo: append subrepo path to subrepo error messages
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17345
diff changeset
365 abort: subrepo s is missing (in subrepo s)
13553
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
366 [255]
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14481
diff changeset
367 $ hg commit --subrepos -qm missing
18109
9e3910db4e78 subrepo: append subrepo path to subrepo error messages
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17345
diff changeset
368 abort: subrepo s is missing (in subrepo s)
13553
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
369 [255]
20105
c5a0f899e47b tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents: 19811
diff changeset
370 $ hg update -C 2> /dev/null
13560
a2734c8322ac merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 13558
diff changeset
371 cloning subrepo s from $TESTTMP/gitroot
13553
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
372 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
373 $ hg sum | grep commit
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
374 commit: (clean)
dea6efdd7ec4 subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents: 13460
diff changeset
375
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
376 Don't crash if the .hgsubstate entry is missing
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
377
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
378 $ hg update 1 -q
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
379 $ hg rm .hgsubstate
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
380 $ hg commit .hgsubstate -m 'no substate'
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
381 nothing changed
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
382 [1]
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
383 $ hg tag -l nosubstate
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
384 $ hg manifest
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
385 .hgsub
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
386 .hgsubstate
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
387 a
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
388
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
389 $ hg status -S
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
390 R .hgsubstate
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
391 $ hg sum | grep commit
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
392 commit: 1 removed, 1 subrepos (new branch head)
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
393
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
394 $ hg commit -m 'restore substate'
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
395 nothing changed
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
396 [1]
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
397 $ hg manifest
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
398 .hgsub
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
399 .hgsubstate
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
400 a
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
401 $ hg sum | grep commit
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
402 commit: 1 removed, 1 subrepos (new branch head)
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
403
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
404 $ hg update -qC nosubstate
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
405 $ ls s
16073
b254f827b7a6 subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents: 15531
diff changeset
406 g
14469
2fdea636f254 subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents: 13553
diff changeset
407
15531
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
408 issue3109: false positives in git diff-index
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
409
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
410 $ hg update -q
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
411 $ touch -t 200001010000 s/g
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
412 $ hg status --subrepos
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
413 $ touch -t 200001010000 s/g
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
414 $ hg sum | grep commit
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
415 commit: (clean)
0810ccc51f0a subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents: 15321
diff changeset
416
13324
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
417 Check hg update --clean
13331
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
418 $ cd $TESTTMP/ta
13324
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
419 $ echo > s/g
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
420 $ cd s
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
421 $ echo c1 > f1
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
422 $ echo c1 > f2
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
423 $ git add f1
e5617047c926 subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents: 13296
diff changeset
424 $ cd ..
13331
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
425 $ hg status -S
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
426 M s/g
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
427 A s/f1
23411
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
428 ? s/f2
13331
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
429 $ ls s
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
430 f
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
431 f1
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
432 f2
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
433 g
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
434 $ hg update --clean
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
435 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
436 $ hg status -S
23411
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
437 ? s/f1
2d86f4e38c08 subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents: 22590
diff changeset
438 ? s/f2
13331
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
439 $ ls s
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
440 f
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
441 f1
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
442 f2
9f2c6892e004 test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents: 13324
diff changeset
443 g
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
444
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
445 Sticky subrepositories, no changes
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
446 $ cd $TESTTMP/ta
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
447 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
448 7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
449 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
450 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
451 32a343883b74769118bb1d3b4b1fbf9156f4dddc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
452 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
453 $ hg update 1 > /dev/null 2>&1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
454 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
455 1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
456 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
457 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
458 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
459 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
460
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20105
diff changeset
461 Sticky subrepositories, file changes
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
462 $ touch s/f1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
463 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
464 $ git add f1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
465 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
466 $ hg id -n
17255
3e856d8abe9c identity: show trailing '+' for dirty subrepos (issue2839)
Patrick Mezard <patrick@mezard.eu>
parents: 17114
diff changeset
467 1+
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
468 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
469 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
470 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
471 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
472 $ hg update 4
21401
2c364f7801c8 subrepo: use subrepo shortid method to generate subrepo diverged promptchoice
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21024
diff changeset
473 subrepository s diverged (local revision: da5f5b1, remote revision: aa84837)
19811
5e10d41e7b9c merge: let the user choose to merge, keep local or keep remote subrepo revisions
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 19049
diff changeset
474 (M)erge, keep (l)ocal or keep (r)emote? m
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
475 subrepository sources for s differ
22590
d4c972b97fee subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
476 use (l)ocal source (da5f5b1) or (r)emote source (aa84837)? l
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
477 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
478 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
479 4+
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
480 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
481 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
482 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
483 $ cd ..
17345
4f8054d3171b check-code: fix check for trailing whitespace on sh command lines
Mads Kiilerich <mads@kiilerich.com>
parents: 17255
diff changeset
484 $ hg update --clean tip > /dev/null 2>&1
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
485
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
486 Sticky subrepository, revision updates
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
487 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
488 7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
489 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
490 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
491 32a343883b74769118bb1d3b4b1fbf9156f4dddc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
492 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
493 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
494 $ git checkout aa84837ccfbdfedcdcdeeedc309d73e6eb069edc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
495 Previous HEAD position was 32a3438... fff
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
496 HEAD is now at aa84837... f
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
497 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
498 $ hg update 1
21401
2c364f7801c8 subrepo: use subrepo shortid method to generate subrepo diverged promptchoice
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21024
diff changeset
499 subrepository s diverged (local revision: 32a3438, remote revision: da5f5b1)
19811
5e10d41e7b9c merge: let the user choose to merge, keep local or keep remote subrepo revisions
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 19049
diff changeset
500 (M)erge, keep (l)ocal or keep (r)emote? m
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
501 subrepository sources for s differ (in checked out version)
22590
d4c972b97fee subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
502 use (l)ocal source (32a3438) or (r)emote source (da5f5b1)? l
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
503 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
504 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
505 1+
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
506 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
507 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
508 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
509 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
510
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
511 Sticky subrepository, file changes and revision updates
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
512 $ touch s/f1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
513 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
514 $ git add f1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
515 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
516 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
517 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
518 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
519 1+
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
520 $ hg update 7
21401
2c364f7801c8 subrepo: use subrepo shortid method to generate subrepo diverged promptchoice
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21024
diff changeset
521 subrepository s diverged (local revision: 32a3438, remote revision: 32a3438)
19811
5e10d41e7b9c merge: let the user choose to merge, keep local or keep remote subrepo revisions
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 19049
diff changeset
522 (M)erge, keep (l)ocal or keep (r)emote? m
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
523 subrepository sources for s differ
22590
d4c972b97fee subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
524 use (l)ocal source (32a3438) or (r)emote source (32a3438)? l
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
525 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
526 $ hg id -n
17255
3e856d8abe9c identity: show trailing '+' for dirty subrepos (issue2839)
Patrick Mezard <patrick@mezard.eu>
parents: 17114
diff changeset
527 7+
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
528 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
529 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
530 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
531 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
532
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
533 Sticky repository, update --clean
16264
0628290d98df tests: ignore git's output in test-subrepo-git.t
Javi Merino <cibervicho@gmail.com>
parents: 15531
diff changeset
534 $ hg update --clean tip 2>/dev/null
13417
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
535 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
536 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
537 7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
538 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
539 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
540 32a343883b74769118bb1d3b4b1fbf9156f4dddc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
541 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
542
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
543 Test subrepo already at intended revision:
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
544 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
545 $ git checkout 32a343883b74769118bb1d3b4b1fbf9156f4dddc
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
546 HEAD is now at 32a3438... fff
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
547 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
548 $ hg update 1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
549 Previous HEAD position was 32a3438... fff
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
550 HEAD is now at da5f5b1... g
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
551 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
552 $ hg id -n
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
553 1
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
554 $ cd s
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
555 $ git rev-parse HEAD
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
556 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
557 $ cd ..
0748e18be470 subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents: 13331
diff changeset
558
16527
17a1f7690b49 subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents: 16271
diff changeset
559 Test forgetting files, not implemented in git subrepo, used to
17a1f7690b49 subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents: 16271
diff changeset
560 traceback
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
561 #if no-windows
16527
17a1f7690b49 subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents: 16271
diff changeset
562 $ hg forget 'notafile*'
17a1f7690b49 subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents: 16271
diff changeset
563 notafile*: No such file or directory
17a1f7690b49 subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents: 16271
diff changeset
564 [1]
17022
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
565 #else
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
566 $ hg forget 'notafile'
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
567 notafile: * (glob)
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
568 [1]
8a38839ae1dc test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents: 16913
diff changeset
569 #endif
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16527
diff changeset
570
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16527
diff changeset
571 $ cd ..
21564
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
572
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
573 Test sanitizing ".hg/hgrc" in subrepo
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
574
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
575 $ cd t
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
576 $ hg tip -q
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
577 7:af6d2edbb0d3
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
578 $ hg update -q -C af6d2edbb0d3
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
579 $ cd s
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
580 $ git checkout -q -b sanitize-test
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
581 $ mkdir .hg
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
582 $ echo '.hg/hgrc in git repo' > .hg/hgrc
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
583 $ mkdir -p sub/.hg
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
584 $ echo 'sub/.hg/hgrc in git repo' > sub/.hg/hgrc
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
585 $ git add .hg sub
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
586 $ git commit -qm 'add .hg/hgrc to be sanitized at hg update'
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
587 $ git push -q origin sanitize-test
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
588 $ cd ..
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
589 $ grep ' s$' .hgsubstate
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
590 32a343883b74769118bb1d3b4b1fbf9156f4dddc s
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
591 $ hg commit -qm 'commit with git revision including .hg/hgrc'
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
592 $ hg parents -q
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
593 8:3473d20bddcf
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
594 $ grep ' s$' .hgsubstate
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
595 c4069473b459cf27fd4d7c2f50c4346b4e936599 s
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
596 $ cd ..
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
597
21566
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
598 $ hg -R tc pull -q
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
599 $ hg -R tc update -q -C 3473d20bddcf 2>&1 | sort
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
600 warning: removing potentially hostile 'hgrc' in '$TESTTMP/tc/s/.hg' (glob)
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
601 warning: removing potentially hostile 'hgrc' in '$TESTTMP/tc/s/sub/.hg' (glob)
21564
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
602 $ cd tc
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
603 $ hg parents -q
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
604 8:3473d20bddcf
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
605 $ grep ' s$' .hgsubstate
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
606 c4069473b459cf27fd4d7c2f50c4346b4e936599 s
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
607 $ test -f s/.hg/hgrc
21564
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
608 [1]
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
609 $ test -f s/sub/.hg/hgrc
21564
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
610 [1]
2e91d4964ecd subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
611 $ cd ..
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
612
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
613 additional test for "git merge --ff" route:
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
614
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
615 $ cd t
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
616 $ hg tip -q
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
617 8:3473d20bddcf
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
618 $ hg update -q -C af6d2edbb0d3
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
619 $ cd s
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
620 $ git checkout -q testing
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
621 $ mkdir .hg
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
622 $ echo '.hg/hgrc in git repo' > .hg/hgrc
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
623 $ mkdir -p sub/.hg
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
624 $ echo 'sub/.hg/hgrc in git repo' > sub/.hg/hgrc
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
625 $ git add .hg sub
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
626 $ git commit -qm 'add .hg/hgrc to be sanitized at hg update (git merge --ff)'
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
627 $ git push -q origin testing
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
628 $ cd ..
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
629 $ grep ' s$' .hgsubstate
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
630 32a343883b74769118bb1d3b4b1fbf9156f4dddc s
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
631 $ hg commit -qm 'commit with git revision including .hg/hgrc'
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
632 $ hg parents -q
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
633 9:ed23f7fe024e
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
634 $ grep ' s$' .hgsubstate
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
635 f262643c1077219fbd3858d54e78ef050ef84fbf s
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
636 $ cd ..
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
637
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
638 $ cd tc
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
639 $ hg update -q -C af6d2edbb0d3
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
640 $ test -f s/.hg/hgrc
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
641 [1]
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
642 $ test -f s/sub/.hg/hgrc
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
643 [1]
21566
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
644 $ cd ..
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
645 $ hg -R tc pull -q
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
646 $ hg -R tc update -q -C ed23f7fe024e 2>&1 | sort
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
647 warning: removing potentially hostile 'hgrc' in '$TESTTMP/tc/s/.hg' (glob)
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
648 warning: removing potentially hostile 'hgrc' in '$TESTTMP/tc/s/sub/.hg' (glob)
a01988cd9b61 subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21565
diff changeset
649 $ cd tc
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
650 $ hg parents -q
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
651 9:ed23f7fe024e
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
652 $ grep ' s$' .hgsubstate
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
653 f262643c1077219fbd3858d54e78ef050ef84fbf s
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
654 $ test -f s/.hg/hgrc
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
655 [1]
21748
8621125a1718 tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21567
diff changeset
656 $ test -f s/sub/.hg/hgrc
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
657 [1]
21567
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
658
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
659 Test that sanitizing is omitted in meta data area:
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
660
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
661 $ mkdir s/.git/.hg
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
662 $ echo '.hg/hgrc in git metadata area' > s/.git/.hg/hgrc
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
663 $ hg update -q -C af6d2edbb0d3
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
664 checking out detached HEAD in subrepo s
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
665 check out a git branch if you intend to make changes
5900bc09e684 subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21566
diff changeset
666
21565
7f7f634d073d subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21564
diff changeset
667 $ cd ..