Mercurial > hg
annotate tests/test-subrepo-git.t @ 34985:5e27afeddaee stable
subrepo: add config option to reject any subrepo operations (SEC)
This is an alternative workaround for the issue5730.
Perhaps this is the simplest way of disabling subrepo operations. It does
nothing clever, but just aborts if Mercurial starts accessing to a subrepo.
I think Greg's patch is more useful since it allows us to at least check
out the parent repository. However, that would be confusing if the default
is flipped to checkout=False and subrepos are silently ignored.
I don't like the config name 'allowed', but I couldn't get any better name.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 05 Nov 2017 21:22:07 +0900 |
parents | 071cbeba4212 |
children | 828cf35f1de6 |
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 |
32413
d6be5b5cc325
test: prepare tests for removing date aliases
Boris Feld <boris.feld@octobus.net>
parents:
30062
diff
changeset
|
5 $ cat >> $HGRCPATH <<EOF |
d6be5b5cc325
test: prepare tests for removing date aliases
Boris Feld <boris.feld@octobus.net>
parents:
30062
diff
changeset
|
6 > [defaults] |
d6be5b5cc325
test: prepare tests for removing date aliases
Boris Feld <boris.feld@octobus.net>
parents:
30062
diff
changeset
|
7 > commit = -d "0 0" |
d6be5b5cc325
test: prepare tests for removing date aliases
Boris Feld <boris.feld@octobus.net>
parents:
30062
diff
changeset
|
8 > EOF |
d6be5b5cc325
test: prepare tests for removing date aliases
Boris Feld <boris.feld@octobus.net>
parents:
30062
diff
changeset
|
9 |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
10 $ echo "[core]" >> $HOME/.gitconfig |
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
11 $ echo "autocrlf = false" >> $HOME/.gitconfig |
12992
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
12 $ GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
13 $ 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
|
14 $ 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
|
15 $ 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
|
16 $ 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
|
17 $ GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE |
23693
9a02f7517939
test-subrepo-git: ignore global git config
Matt Mackall <mpm@selenic.com>
parents:
23678
diff
changeset
|
18 $ GIT_CONFIG_NOSYSTEM=1; export GIT_CONFIG_NOSYSTEM |
12992
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
19 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
20 root hg repo |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
21 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
22 $ hg init t |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
23 $ cd t |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
24 $ echo a > a |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
25 $ hg add a |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
26 $ hg commit -m a |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
27 $ cd .. |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
28 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
29 new external git repo |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
30 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
31 $ mkdir gitroot |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
32 $ cd gitroot |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
33 $ git init -q |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
34 $ echo g > g |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
35 $ git add g |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
36 $ git commit -q -m g |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
37 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
38 add subrepo clone |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
39 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
40 $ cd ../t |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
41 $ echo 's = [git]../gitroot' > .hgsub |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
42 $ git clone -q ../gitroot s |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
43 $ hg add .hgsub |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
44 $ hg commit -m 'new git subrepo' |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
45 $ hg debugsub |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
46 path s |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
47 source ../gitroot |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
48 revision da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
49 |
12995
d90fc91c8377
subrepo: update and merge works with any git branch
Eric Eisner <ede@mit.edu>
parents:
12994
diff
changeset
|
50 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
|
51 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
52 $ cd ../gitroot |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
53 $ git checkout -q -b testing |
12992
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
54 $ echo gg >> g |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
55 $ git commit -q -a -m gg |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
56 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
57 $ cd ../t/s |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
58 $ 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
|
59 $ 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
|
60 |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
61 $ cd .. |
13182
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
62 $ hg status --subrepos |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
63 M s/g |
12992
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
64 $ hg commit -m 'update git subrepo' |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
65 $ hg debugsub |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
66 path s |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
67 source ../gitroot |
2b73a3279a9f
subrepo: support for adding a git subrepo
Eric Eisner <ede@mit.edu>
parents:
diff
changeset
|
68 revision 126f2a14290cd5ce061fdedc430170e8d39e1c5a |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
69 |
13092
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
70 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
|
71 |
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
72 $ cd .. |
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
73 $ git clone gitroot gitrootbare --bare -q |
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
74 $ rm -rf gitroot |
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
75 $ mv gitrootbare gitroot |
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
76 |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
77 clone root |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
78 |
13092
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
79 $ cd t |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
80 $ hg clone . ../tc 2> /dev/null |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
81 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
82 cloning subrepo s from $TESTTMP/gitroot |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
83 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
|
84 $ cd ../tc |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
85 $ hg debugsub |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
86 path s |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
87 source ../gitroot |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
88 revision 126f2a14290cd5ce061fdedc430170e8d39e1c5a |
34985
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
89 $ cd .. |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
90 |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
91 clone with subrepo disabled (update should fail) |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
92 |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
93 $ hg clone t -U tc2 --config subrepos.allowed=false |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
94 $ hg update -R tc2 --config subrepos.allowed=false |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
95 abort: subrepo not allowed |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
96 (see 'hg help config.subrepos' for details) |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
97 [255] |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
98 $ ls tc2 |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
99 a |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
100 |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
101 $ hg clone t tc3 --config subrepos.allowed=false |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
102 updating to branch default |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
103 abort: subrepo not allowed |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
104 (see 'hg help config.subrepos' for details) |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
105 [255] |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
106 $ ls tc3 |
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
107 a |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
108 |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
109 update to previous substate |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
110 |
34985
5e27afeddaee
subrepo: add config option to reject any subrepo operations (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34984
diff
changeset
|
111 $ cd tc |
13111
560b8001f765
subrepo: silence git output when ui.quiet is set
Eric Eisner <ede@mit.edu>
parents:
13092
diff
changeset
|
112 $ hg update 1 -q |
12993
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
113 $ cat s/g |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
114 g |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
115 $ hg debugsub |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
116 path s |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
117 source ../gitroot |
a91334380699
subrepo: cloning and updating of git subrepos
Eric Eisner <ede@mit.edu>
parents:
12992
diff
changeset
|
118 revision da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
119 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
120 clone root, make local change |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
121 |
13092
83986af605e5
test-subrepo-git.t: make gitroot pushable earlier
Eric Eisner <ede@mit.edu>
parents:
13091
diff
changeset
|
122 $ cd ../t |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
123 $ 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
|
124 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
125 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
|
126 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
|
127 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
128 $ cd ../ta |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
129 $ echo ggg >> s/g |
13182
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
130 $ hg status --subrepos |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
131 M s/g |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
132 $ hg diff --subrepos |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
133 diff --git a/s/g b/s/g |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
134 index 089258f..85341ee 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
135 --- a/s/g |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
136 +++ b/s/g |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
137 @@ -1,2 +1,3 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
138 g |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
139 gg |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
140 +ggg |
15321
e174353e8cda
subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents:
14481
diff
changeset
|
141 $ hg commit --subrepos -m ggg |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
142 committing subrepository s |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
143 $ hg debugsub |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
144 path s |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
145 source ../gitroot |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
146 revision 79695940086840c99328513acbe35f90fcd55e57 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
147 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
148 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
|
149 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
150 $ cd ../t |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
151 $ 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
|
152 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
153 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
|
154 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
|
155 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
156 $ 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
|
157 $ hg status --subrepos |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
158 $ 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
|
159 $ 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
|
160 ? s/f |
23963
8f02682ff3b0
subrepo: don't abort in add when non-hg subrepos are present (issue4513)
Matt Harbison <matt_harbison@yahoo.com>
parents:
23938
diff
changeset
|
161 $ hg add . |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
162 adding f |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
163 $ git add f |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
164 $ cd .. |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
165 |
13182
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
166 $ hg status --subrepos |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
167 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
|
168 $ hg commit --subrepos -m f |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
169 committing subrepository s |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
170 $ hg debugsub |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
171 path s |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
172 source ../gitroot |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
173 revision aa84837ccfbdfedcdcdeeedc309d73e6eb069edc |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
174 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
175 user b push changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
176 |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
177 $ 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
|
178 pushing to $TESTTMP/t (glob) |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
179 pushing branch testing of subrepository "s" |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
180 searching for changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
181 adding changesets |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
182 adding manifests |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
183 adding file changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
184 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
|
185 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
186 user a pulls, merges, commits |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
187 |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
188 $ cd ../ta |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
189 $ hg pull |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
190 pulling from $TESTTMP/t (glob) |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
191 searching for changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
192 adding changesets |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
193 adding manifests |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
194 adding file changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
195 added 1 changesets with 1 changes to 1 files (+1 heads) |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34146
diff
changeset
|
196 new changesets 089416c11d73 |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
197 (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
|
198 $ 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
|
199 subrepository s diverged (local revision: 7969594, remote revision: aa84837) |
30062
940c05b25b07
merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents:
30060
diff
changeset
|
200 (M)erge, keep (l)ocal [working copy] or keep (r)emote [merge rev]? m |
13569
3ab3b892d223
subrepo: show the source that git pulls
Eric Eisner <ede@mit.edu>
parents:
13560
diff
changeset
|
201 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
|
202 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
|
203 (branch merge, don't forget to commit) |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
204 $ hg st --subrepos s |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
205 A s/f |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
206 $ cat s/f |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
207 f |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
208 $ cat s/g |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
209 g |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
210 gg |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
211 ggg |
15321
e174353e8cda
subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents:
14481
diff
changeset
|
212 $ hg commit --subrepos -m 'merge' |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
213 committing subrepository s |
13182
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
214 $ hg status --subrepos --rev 1:5 |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
215 M .hgsubstate |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
216 M s/g |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
217 A s/f |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
218 $ hg debugsub |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
219 path s |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
220 source ../gitroot |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
221 revision f47b465e1bce645dbf37232a00574aa1546ca8d3 |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
222 $ 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
|
223 pushing to $TESTTMP/t (glob) |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
224 pushing branch testing of subrepository "s" |
12994
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
225 searching for changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
226 adding changesets |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
227 adding manifests |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
228 adding file changes |
845c602b8635
subrepo: allow git subrepos to push and merge
Eric Eisner <ede@mit.edu>
parents:
12993
diff
changeset
|
229 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
|
230 |
13029 | 231 make upstream git changes |
232 | |
233 $ cd .. | |
234 $ git clone -q gitroot gitclone | |
235 $ cd gitclone | |
236 $ echo ff >> f | |
237 $ git commit -q -a -m ff | |
238 $ echo fff >> f | |
239 $ git commit -q -a -m fff | |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
240 $ git push origin testing 2>/dev/null |
13029 | 241 |
242 make and push changes to hg without updating the subrepo | |
243 | |
244 $ cd ../t | |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
245 $ hg clone . ../td 2>&1 | egrep -v '^Cloning into|^done\.' |
13029 | 246 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
247 cloning subrepo s from $TESTTMP/gitroot |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
248 checking out detached HEAD in subrepository "s" |
13029 | 249 check out a git branch if you intend to make changes |
250 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
251 $ cd ../td | |
252 $ echo aa >> a | |
253 $ hg commit -m aa | |
254 $ hg push | |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
255 pushing to $TESTTMP/t (glob) |
13029 | 256 searching for changes |
257 adding changesets | |
258 adding manifests | |
259 adding file changes | |
260 added 1 changesets with 1 changes to 1 files | |
261 | |
13087
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
262 sync to upstream git, distribute changes |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
263 |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
264 $ cd ../ta |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
265 $ hg pull -u -q |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
266 $ cd s |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
267 $ 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
|
268 $ cd .. |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
269 $ hg commit -m 'git upstream sync' |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
270 $ hg debugsub |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
271 path s |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
272 source ../gitroot |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
273 revision 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
274 $ hg push -q |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
275 |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
276 $ cd ../tb |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
277 $ hg pull -q |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
278 $ hg update 2>/dev/null |
13569
3ab3b892d223
subrepo: show the source that git pulls
Eric Eisner <ede@mit.edu>
parents:
13560
diff
changeset
|
279 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
|
280 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
|
281 $ hg debugsub |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
282 path s |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
283 source ../gitroot |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
284 revision 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
cca0779b4832
subrepo: lazily update git's local tracking branches
Eric Eisner <ede@mit.edu>
parents:
13029
diff
changeset
|
285 |
19013
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
286 create a new git branch |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
287 |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
288 $ cd s |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
289 $ git checkout -b b2 |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
290 Switched to a new branch 'b2' |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
291 $ echo a>a |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
292 $ git add a |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
293 $ git commit -qm 'add a' |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
294 $ cd .. |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
295 $ hg commit -m 'add branch in s' |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
296 |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
297 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
|
298 (issue3870) |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
299 $ cd ../td/s |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
300 $ 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
|
301 $ git branch --no-track oldtesting |
19013
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
302 $ cd .. |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
303 $ hg pull -q ../tb |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
304 $ hg up |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
305 From $TESTTMP/tb/s |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
306 * [new branch] b2 -> origin/b2 |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
307 Previous HEAD position was f47b465... merge |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
308 Switched to a new branch 'b2' |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
309 pulling subrepo s from $TESTTMP/tb/s |
2b34d004e644
subrepo: add regression test for issue3870
Kevin Bullock <kbullock@ringworld.org>
parents:
18109
diff
changeset
|
310 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
|
311 |
12996
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
312 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
|
313 |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
314 $ cd ../t |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
315 $ hg up 0 |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
316 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
|
317 $ ls -a s |
12996
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
318 . |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
319 .. |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
320 .git |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
321 |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
322 $ hg up 2 |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
323 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
|
324 $ ls -a s |
12996
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
325 . |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
326 .. |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
327 .git |
3a42651b0a62
subrepo: removing (and restoring) git subrepo state
Eric Eisner <ede@mit.edu>
parents:
12995
diff
changeset
|
328 g |
13027 | 329 |
330 archive subrepos | |
331 | |
13091
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
332 $ cd ../tc |
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
333 $ hg pull -q |
8cecea387574
test-subrepo-git.t: silence git output
Eric Eisner <ede@mit.edu>
parents:
13087
diff
changeset
|
334 $ 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
|
335 pulling subrepo s from $TESTTMP/gitroot |
13027 | 336 $ cd ../archive |
337 $ cat s/f | |
338 f | |
339 $ cat s/g | |
340 g | |
341 gg | |
342 ggg | |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
343 |
17108
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
344 $ 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
|
345 $ 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
|
346 ../archive_x |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
347 ../archive_x/.hg_archival.txt |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
348 ../archive_x/.hgsub |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
349 ../archive_x/.hgsubstate |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
350 ../archive_x/a |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
351 ../archive_x/s |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
352 ../archive_x/s/g |
1894dac619de
subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents:
17022
diff
changeset
|
353 |
24953
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
354 $ hg -R ../tc archive -S ../archive.tgz --prefix '.' 2>/dev/null |
24964
fc92ccbbeb9a
test-subrepo-git: ignore pax_global_header when listing archive
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24953
diff
changeset
|
355 $ tar -tzf ../archive.tgz | sort | grep -v pax_global_header |
24953
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
356 .hg_archival.txt |
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
357 .hgsub |
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
358 .hgsubstate |
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
359 a |
5115d03440f4
archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24943
diff
changeset
|
360 s/g |
24924
41cd8171e58f
archive: always use portable path component separators with subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
24902
diff
changeset
|
361 |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
362 create nested repo |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
363 |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
364 $ cd .. |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
365 $ hg init outer |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
366 $ cd outer |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
367 $ echo b>b |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
368 $ hg add b |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
369 $ hg commit -m b |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
370 |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
371 $ hg clone ../t inner 2> /dev/null |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
372 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
373 cloning subrepo s from $TESTTMP/gitroot |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
374 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
|
375 $ echo inner = inner > .hgsub |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
376 $ hg add .hgsub |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
377 $ hg commit -m 'nested sub' |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
378 |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
379 nested commit |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
380 |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
381 $ echo ffff >> inner/s/f |
13182
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
382 $ hg status --subrepos |
2537bd17421d
subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu>
parents:
13181
diff
changeset
|
383 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
|
384 $ hg commit --subrepos -m nested |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
385 committing subrepository inner |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
386 committing subrepository inner/s (glob) |
13181
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
387 |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
388 nested archive |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
389 |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
390 $ 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
|
391 $ 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
|
392 f |
413bef846806
subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13111
diff
changeset
|
393 g |
13324
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
394 |
13460
64bb8e586a92
subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13428
diff
changeset
|
395 relative source expansion |
64bb8e586a92
subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13428
diff
changeset
|
396 |
64bb8e586a92
subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13428
diff
changeset
|
397 $ cd .. |
64bb8e586a92
subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13428
diff
changeset
|
398 $ mkdir d |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
399 $ 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
|
400 updating to branch default |
13525
c12088259f64
subrepo: show the source that git clones
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
401 cloning subrepo s from $TESTTMP/gitroot |
13460
64bb8e586a92
subrepo: expand relative sources for git subrepos
Eric Eisner <ede@mit.edu>
parents:
13428
diff
changeset
|
402 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
|
403 |
13553
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
404 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
|
405 |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
406 $ hg clone t missing -q |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
407 $ cd missing |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
408 $ rm -rf s |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
409 $ hg status -S |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
410 $ hg sum | grep commit |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
411 commit: 1 subrepos |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
412 $ hg push -q |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
413 abort: subrepo s is missing (in subrepository "s") |
13553
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
414 [255] |
15321
e174353e8cda
subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents:
14481
diff
changeset
|
415 $ hg commit --subrepos -qm missing |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
416 abort: subrepo s is missing (in subrepository "s") |
13553
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
417 [255] |
24902
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
418 |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
419 #if symlink |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
420 Don't crash if subrepo is a broken symlink |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
421 $ ln -s broken s |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
422 $ hg status -S |
34984
071cbeba4212
subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34661
diff
changeset
|
423 abort: subrepo 's' traverses symbolic link |
071cbeba4212
subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34661
diff
changeset
|
424 [255] |
24902
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
425 $ hg push -q |
34984
071cbeba4212
subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34661
diff
changeset
|
426 abort: subrepo 's' traverses symbolic link |
24902
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
427 [255] |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
428 $ hg commit --subrepos -qm missing |
34984
071cbeba4212
subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
34661
diff
changeset
|
429 abort: subrepo 's' traverses symbolic link |
24902
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
430 [255] |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
431 $ rm s |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
432 #endif |
986a5c23b1c1
util.checkcase: don't abort on broken symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
24778
diff
changeset
|
433 |
20105
c5a0f899e47b
tests: deal with new gits sending status messages to stderr
Mads Kiilerich <madski@unity3d.com>
parents:
19811
diff
changeset
|
434 $ hg update -C 2> /dev/null |
13560 | 435 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
|
436 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
|
437 $ hg sum | grep commit |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
438 commit: (clean) |
dea6efdd7ec4
subrepo: don't crash when git repo is missing
Eric Eisner <ede@mit.edu>
parents:
13460
diff
changeset
|
439 |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
440 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
|
441 |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
442 $ 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
|
443 $ hg rm .hgsubstate |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
444 $ 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
|
445 nothing changed |
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
446 [1] |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
447 $ 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
|
448 $ hg manifest |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
449 .hgsub |
16073
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
450 .hgsubstate |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
451 a |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
452 |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
453 $ hg status -S |
16073
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
454 R .hgsubstate |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
455 $ hg sum | grep commit |
16073
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
456 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
|
457 |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
458 $ 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
|
459 nothing changed |
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
460 [1] |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
461 $ hg manifest |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
462 .hgsub |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
463 .hgsubstate |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
464 a |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
465 $ hg sum | grep commit |
16073
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
466 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
|
467 |
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
468 $ 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
|
469 $ ls s |
16073
b254f827b7a6
subrepo: rewrite handling of subrepo state at commit (issue2403)
Matt Mackall <mpm@selenic.com>
parents:
15531
diff
changeset
|
470 g |
14469
2fdea636f254
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Eric Eisner <ede@alum.mit.edu>
parents:
13553
diff
changeset
|
471 |
15531
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
472 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
|
473 |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
474 $ hg update -q |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
475 $ touch -t 200001010000 s/g |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
476 $ hg status --subrepos |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
477 $ touch -t 200001010000 s/g |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
478 $ hg sum | grep commit |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
479 commit: (clean) |
0810ccc51f0a
subrepo: fix git status false positive (issue3109)
Eric Roshan Eisner <ede@alum.mit.edu>
parents:
15321
diff
changeset
|
480 |
13324
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
481 Check hg update --clean |
13331
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
482 $ 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
|
483 $ echo > s/g |
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
484 $ cd s |
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
485 $ echo c1 > f1 |
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
486 $ echo c1 > f2 |
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
487 $ git add f1 |
e5617047c926
subrepo: make update -C clean the working directory for git subrepos
Erik Zielke <ez@aragost.com>
parents:
13296
diff
changeset
|
488 $ cd .. |
13331
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
489 $ hg status -S |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
490 M s/g |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
491 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
|
492 ? s/f2 |
13331
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
493 $ ls s |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
494 f |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
495 f1 |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
496 f2 |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
497 g |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
498 $ hg update --clean |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
499 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
|
500 $ 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
|
501 ? s/f1 |
2d86f4e38c08
subrepo: add status support for ignored files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
22590
diff
changeset
|
502 ? s/f2 |
13331
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
503 $ ls s |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
504 f |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
505 f1 |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
506 f2 |
9f2c6892e004
test-subrepo-git.t: make compatible with old git
Eric Eisner <ede@mit.edu>
parents:
13324
diff
changeset
|
507 g |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
508 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
509 Sticky subrepositories, no changes |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
510 $ cd $TESTTMP/ta |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
511 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
512 7 |
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 rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
515 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
516 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
517 $ 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
|
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 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
521 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
522 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
523 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
524 |
21024
7731a2281cf0
spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents:
20105
diff
changeset
|
525 Sticky subrepositories, file changes |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
526 $ touch s/f1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
527 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
528 $ git add f1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
529 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
530 $ hg id -n |
17255
3e856d8abe9c
identity: show trailing '+' for dirty subrepos (issue2839)
Patrick Mezard <patrick@mezard.eu>
parents:
17114
diff
changeset
|
531 1+ |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
532 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
533 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
534 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
535 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
536 $ 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
|
537 subrepository s diverged (local revision: da5f5b1, remote revision: aa84837) |
30060
a145161debed
merge: use labels in subrepo merge
Simon Farnsworth <simonfar@fb.com>
parents:
29328
diff
changeset
|
538 (M)erge, keep (l)ocal [working copy] or keep (r)emote [destination]? m |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
539 subrepository sources for s differ |
22590
d4c972b97fee
subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents:
22046
diff
changeset
|
540 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
|
541 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
|
542 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
543 4+ |
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 rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
546 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
547 $ cd .. |
17345
4f8054d3171b
check-code: fix check for trailing whitespace on sh command lines
Mads Kiilerich <mads@kiilerich.com>
parents:
17255
diff
changeset
|
548 $ 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
|
549 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
550 Sticky subrepository, revision updates |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
551 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
552 7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
553 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
554 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
555 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
556 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
557 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
558 $ git checkout aa84837ccfbdfedcdcdeeedc309d73e6eb069edc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
559 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
|
560 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
|
561 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
562 $ 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
|
563 subrepository s diverged (local revision: 32a3438, remote revision: da5f5b1) |
30060
a145161debed
merge: use labels in subrepo merge
Simon Farnsworth <simonfar@fb.com>
parents:
29328
diff
changeset
|
564 (M)erge, keep (l)ocal [working copy] or keep (r)emote [destination]? m |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
565 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
|
566 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
|
567 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
|
568 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
569 1+ |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
570 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
571 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
572 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
573 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
574 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
575 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
|
576 $ touch s/f1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
577 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
578 $ git add f1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
579 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
580 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
581 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
582 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
583 1+ |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
584 $ 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
|
585 subrepository s diverged (local revision: 32a3438, remote revision: 32a3438) |
30060
a145161debed
merge: use labels in subrepo merge
Simon Farnsworth <simonfar@fb.com>
parents:
29328
diff
changeset
|
586 (M)erge, keep (l)ocal [working copy] or keep (r)emote [destination]? m |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
587 subrepository sources for s differ |
22590
d4c972b97fee
subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents:
22046
diff
changeset
|
588 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
|
589 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
|
590 $ hg id -n |
17255
3e856d8abe9c
identity: show trailing '+' for dirty subrepos (issue2839)
Patrick Mezard <patrick@mezard.eu>
parents:
17114
diff
changeset
|
591 7+ |
13417
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
592 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
593 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
594 aa84837ccfbdfedcdcdeeedc309d73e6eb069edc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
595 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
596 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
597 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
|
598 $ 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
|
599 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
|
600 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
601 7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
602 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
603 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
604 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
605 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
606 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
607 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
|
608 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
609 $ git checkout 32a343883b74769118bb1d3b4b1fbf9156f4dddc |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
610 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
|
611 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
612 $ hg update 1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
613 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
|
614 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
|
615 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
|
616 $ hg id -n |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
617 1 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
618 $ cd s |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
619 $ git rev-parse HEAD |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
620 da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7 |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
621 $ cd .. |
0748e18be470
subrepos: prompt on conflicts on update with dirty subrepos
Erik Zielke <ez@aragost.com>
parents:
13331
diff
changeset
|
622 |
16527
17a1f7690b49
subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents:
16271
diff
changeset
|
623 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
|
624 traceback |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
625 #if no-windows |
16527
17a1f7690b49
subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents:
16271
diff
changeset
|
626 $ hg forget 'notafile*' |
17a1f7690b49
subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents:
16271
diff
changeset
|
627 notafile*: No such file or directory |
17a1f7690b49
subrepo: fix default implementation of forget() (issue3404)
Patrick Mezard <patrick@mezard.eu>
parents:
16271
diff
changeset
|
628 [1] |
17022
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
629 #else |
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
630 $ hg forget 'notafile' |
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
631 notafile: * (glob) |
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
632 [1] |
8a38839ae1dc
test-subrepo-git.t: adapt for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16913
diff
changeset
|
633 #endif |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16527
diff
changeset
|
634 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16527
diff
changeset
|
635 $ cd .. |
21564
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
636 |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
637 Test sanitizing ".hg/hgrc" in subrepo |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
638 |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
639 $ cd t |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
640 $ hg tip -q |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
641 7:af6d2edbb0d3 |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
642 $ hg update -q -C af6d2edbb0d3 |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
643 $ cd s |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
644 $ git checkout -q -b sanitize-test |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
645 $ mkdir .hg |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
646 $ echo '.hg/hgrc in git repo' > .hg/hgrc |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
647 $ mkdir -p sub/.hg |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
648 $ 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
|
649 $ git add .hg sub |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
650 $ 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
|
651 $ git push -q origin sanitize-test |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
652 $ cd .. |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
653 $ grep ' s$' .hgsubstate |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
654 32a343883b74769118bb1d3b4b1fbf9156f4dddc s |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
655 $ 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
|
656 $ hg parents -q |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
657 8:3473d20bddcf |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
658 $ grep ' s$' .hgsubstate |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
659 c4069473b459cf27fd4d7c2f50c4346b4e936599 s |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
660 $ cd .. |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
661 |
21566
a01988cd9b61
subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21565
diff
changeset
|
662 $ 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
|
663 $ 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
|
664 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
|
665 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
|
666 $ cd tc |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
667 $ hg parents -q |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
668 8:3473d20bddcf |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
669 $ grep ' s$' .hgsubstate |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
670 c4069473b459cf27fd4d7c2f50c4346b4e936599 s |
21748
8621125a1718
tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents:
21567
diff
changeset
|
671 $ test -f s/.hg/hgrc |
21564
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
672 [1] |
21748
8621125a1718
tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents:
21567
diff
changeset
|
673 $ test -f s/sub/.hg/hgrc |
21564
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
674 [1] |
2e91d4964ecd
subrepo: make "_sanitize()" work
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21024
diff
changeset
|
675 $ cd .. |
21565
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
676 |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
677 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
|
678 |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
679 $ cd t |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
680 $ hg tip -q |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
681 8:3473d20bddcf |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
682 $ 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
|
683 $ cd s |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
684 $ git checkout -q testing |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
685 $ mkdir .hg |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
686 $ 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
|
687 $ mkdir -p sub/.hg |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
688 $ 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
|
689 $ git add .hg sub |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
690 $ 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
|
691 $ 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
|
692 $ cd .. |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
693 $ grep ' s$' .hgsubstate |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
694 32a343883b74769118bb1d3b4b1fbf9156f4dddc s |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
695 $ 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
|
696 $ hg parents -q |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
697 9:ed23f7fe024e |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
698 $ grep ' s$' .hgsubstate |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
699 f262643c1077219fbd3858d54e78ef050ef84fbf s |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
700 $ cd .. |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
701 |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
702 $ cd tc |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
703 $ 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
|
704 $ 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
|
705 [1] |
21748
8621125a1718
tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents:
21567
diff
changeset
|
706 $ 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
|
707 [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
|
708 $ cd .. |
a01988cd9b61
subrepo: make "_sanitize()" take absolute path to the root of subrepo
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21565
diff
changeset
|
709 $ 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
|
710 $ 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
|
711 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
|
712 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
|
713 $ cd tc |
21565
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
714 $ hg parents -q |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
715 9:ed23f7fe024e |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
716 $ grep ' s$' .hgsubstate |
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
717 f262643c1077219fbd3858d54e78ef050ef84fbf s |
21748
8621125a1718
tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents:
21567
diff
changeset
|
718 $ 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
|
719 [1] |
21748
8621125a1718
tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents:
21567
diff
changeset
|
720 $ 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
|
721 [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
|
722 |
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
|
723 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
|
724 |
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
|
725 $ 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
|
726 $ 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
|
727 $ hg update -q -C af6d2edbb0d3 |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
728 checking out detached HEAD in subrepository "s" |
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
|
729 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
|
730 |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
731 check differences made by most recent change |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
732 $ cd s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
733 $ cat > foobar << EOF |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
734 > woopwoop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
735 > |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
736 > foo |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
737 > bar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
738 > EOF |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
739 $ git add foobar |
21565
7f7f634d073d
subrepo: invoke "_sanitize()" also after "git merge --ff"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21564
diff
changeset
|
740 $ cd .. |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
741 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
742 $ hg diff --subrepos |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
743 diff --git a/s/foobar b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
744 new file mode 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
745 index 0000000..8a5a5e2 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
746 --- /dev/null |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
747 +++ b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
748 @@ -0,0 +1,4 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
749 +woopwoop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
750 + |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
751 +foo |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
752 +bar |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
753 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
754 $ hg commit --subrepos -m "Added foobar" |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
755 committing subrepository s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
756 created new head |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
757 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
758 $ hg diff -c . --subrepos --nodates |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
759 diff -r af6d2edbb0d3 -r 255ee8cf690e .hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
760 --- a/.hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
761 +++ b/.hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
762 @@ -1,1 +1,1 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
763 -32a343883b74769118bb1d3b4b1fbf9156f4dddc s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
764 +fd4dbf828a5b2fcd36b2bcf21ea773820970d129 s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
765 diff --git a/s/foobar b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
766 new file mode 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
767 index 0000000..8a5a5e2 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
768 --- /dev/null |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
769 +++ b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
770 @@ -0,0 +1,4 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
771 +woopwoop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
772 + |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
773 +foo |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
774 +bar |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
775 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
776 check output when only diffing the subrepository |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
777 $ hg diff -c . --subrepos s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
778 diff --git a/s/foobar b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
779 new file mode 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
780 index 0000000..8a5a5e2 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
781 --- /dev/null |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
782 +++ b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
783 @@ -0,0 +1,4 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
784 +woopwoop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
785 + |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
786 +foo |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
787 +bar |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
788 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
789 check output when diffing something else |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
790 $ hg diff -c . --subrepos .hgsubstate --nodates |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
791 diff -r af6d2edbb0d3 -r 255ee8cf690e .hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
792 --- a/.hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
793 +++ b/.hgsubstate |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
794 @@ -1,1 +1,1 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
795 -32a343883b74769118bb1d3b4b1fbf9156f4dddc s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
796 +fd4dbf828a5b2fcd36b2bcf21ea773820970d129 s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
797 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
798 add new changes, including whitespace |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
799 $ cd s |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
800 $ cat > foobar << EOF |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
801 > woop woop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
802 > |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
803 > foo |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
804 > bar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
805 > EOF |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
806 $ echo foo > barfoo |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
807 $ git add barfoo |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
808 $ cd .. |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
809 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
810 $ hg diff --subrepos --ignore-all-space |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
811 diff --git a/s/barfoo b/s/barfoo |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
812 new file mode 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
813 index 0000000..257cc56 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
814 --- /dev/null |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
815 +++ b/s/barfoo |
28035
c65da6892ae5
tests: make chunk header of external diff glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26969
diff
changeset
|
816 @@ -0,0 +1* @@ (glob) |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
817 +foo |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
818 $ hg diff --subrepos s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
819 diff --git a/s/foobar b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
820 index 8a5a5e2..bd5812a 100644 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
821 --- a/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
822 +++ b/s/foobar |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
823 @@ -1,4 +1,4 @@ |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
824 -woopwoop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
825 +woop woop |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
826 |
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
827 foo |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
828 bar |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
829 |
23542
8b5adc6b72ae
tests: allow more flexibility in git diffstat output
Mathias De Maré <mathias.demare@gmail.com>
parents:
23523
diff
changeset
|
830 execute a diffstat |
8b5adc6b72ae
tests: allow more flexibility in git diffstat output
Mathias De Maré <mathias.demare@gmail.com>
parents:
23523
diff
changeset
|
831 the output contains a regex, because git 1.7.10 and 1.7.11 |
8b5adc6b72ae
tests: allow more flexibility in git diffstat output
Mathias De Maré <mathias.demare@gmail.com>
parents:
23523
diff
changeset
|
832 change the amount of whitespace |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
833 $ hg diff --subrepos --stat |
23542
8b5adc6b72ae
tests: allow more flexibility in git diffstat output
Mathias De Maré <mathias.demare@gmail.com>
parents:
23523
diff
changeset
|
834 \s*barfoo |\s*1 + (re) |
8b5adc6b72ae
tests: allow more flexibility in git diffstat output
Mathias De Maré <mathias.demare@gmail.com>
parents:
23523
diff
changeset
|
835 \s*foobar |\s*2 +- (re) |
23938
de519517f597
subrepo: correctly add newline for git subrepo diffs
Mathias De Maré <mathias.demare@gmail.com>
parents:
23937
diff
changeset
|
836 2 files changed, 2 insertions\(\+\), 1 deletions?\(-\) (re) |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
837 |
24778
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
838 adding an include should ignore the other elements |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
839 $ hg diff --subrepos -I s/foobar |
24778
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
840 diff --git a/s/foobar b/s/foobar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
841 index 8a5a5e2..bd5812a 100644 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
842 --- a/s/foobar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
843 +++ b/s/foobar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
844 @@ -1,4 +1,4 @@ |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
845 -woopwoop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
846 +woop woop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
847 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
848 foo |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
849 bar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
850 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
851 adding an exclude should ignore this element |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
852 $ hg diff --subrepos -X s/foobar |
24778
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
853 diff --git a/s/barfoo b/s/barfoo |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
854 new file mode 100644 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
855 index 0000000..257cc56 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
856 --- /dev/null |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
857 +++ b/s/barfoo |
28035
c65da6892ae5
tests: make chunk header of external diff glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26969
diff
changeset
|
858 @@ -0,0 +1* @@ (glob) |
24778
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
859 +foo |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
860 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
861 moving a file should show a removal and an add |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
862 $ hg revert --all |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
863 reverting subrepo ../gitroot |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
864 $ cd s |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
865 $ git mv foobar woop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
866 $ cd .. |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
867 $ hg diff --subrepos |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
868 diff --git a/s/foobar b/s/foobar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
869 deleted file mode 100644 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
870 index 8a5a5e2..0000000 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
871 --- a/s/foobar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
872 +++ /dev/null |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
873 @@ -1,4 +0,0 @@ |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
874 -woopwoop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
875 - |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
876 -foo |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
877 -bar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
878 diff --git a/s/woop b/s/woop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
879 new file mode 100644 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
880 index 0000000..8a5a5e2 |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
881 --- /dev/null |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
882 +++ b/s/woop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
883 @@ -0,0 +1,4 @@ |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
884 +woopwoop |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
885 + |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
886 +foo |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
887 +bar |
a48b65ab428d
subrepo: add include/exclude support for diffing git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24581
diff
changeset
|
888 $ rm s/woop |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
889 |
23550
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
890 revert the subrepository |
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
891 $ hg revert --all |
23937
fd5b9417d315
tests: discard useless "(glob)" in "reverting subrepo" lines
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23693
diff
changeset
|
892 reverting subrepo ../gitroot |
23550
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
893 |
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
894 $ hg status --subrepos |
23678
194d2f185008
subrepo: add full revert support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23551
diff
changeset
|
895 ? s/barfoo |
194d2f185008
subrepo: add full revert support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23551
diff
changeset
|
896 ? s/foobar.orig |
23550
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
897 |
23678
194d2f185008
subrepo: add full revert support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23551
diff
changeset
|
898 $ mv s/foobar.orig s/foobar |
194d2f185008
subrepo: add full revert support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23551
diff
changeset
|
899 |
23550
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
900 $ hg revert --no-backup s |
23937
fd5b9417d315
tests: discard useless "(glob)" in "reverting subrepo" lines
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23693
diff
changeset
|
901 reverting subrepo ../gitroot |
23550
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
902 |
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
903 $ hg status --subrepos |
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
904 ? s/barfoo |
7fa2189c1e87
subrepo: add revert support without backup for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23542
diff
changeset
|
905 |
26940
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
906 revert moves orig files to the right place |
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
907 $ echo 'bloop' > s/foobar |
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
908 $ hg revert --all --verbose --config 'ui.origbackuppath=.hg/origbackups' |
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
909 reverting subrepo ../gitroot |
26969
b54b520a24c2
tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
26940
diff
changeset
|
910 creating directory: $TESTTMP/tc/.hg/origbackups (glob) |
34146
9e4f82bc2b0b
scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents:
33660
diff
changeset
|
911 saving current version of foobar as $TESTTMP/tc/.hg/origbackups/foobar (glob) |
26940
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
912 $ ls .hg/origbackups |
34146
9e4f82bc2b0b
scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents:
33660
diff
changeset
|
913 foobar |
26940
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
914 $ rm -rf .hg/origbackups |
91786f20db83
git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com>
parents:
24964
diff
changeset
|
915 |
23991
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
916 show file at specific revision |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
917 $ cat > s/foobar << EOF |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
918 > woop woop |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
919 > fooo bar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
920 > EOF |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
921 $ hg commit --subrepos -m "updated foobar" |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
922 committing subrepository s |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
923 $ cat > s/foobar << EOF |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
924 > current foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
925 > (should not be visible using hg cat) |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
926 > EOF |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
927 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
928 $ hg cat -r . s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
929 woop woop |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
930 fooo bar (no-eol) |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
931 $ hg cat -r "parents(.)" s/foobar > catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
932 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
933 $ mkdir -p tmp/s |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
934 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
935 $ hg cat -r "parents(.)" --output tmp/%% s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
936 $ diff tmp/% catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
937 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
938 $ hg cat -r "parents(.)" --output tmp/%s s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
939 $ diff tmp/foobar catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
940 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
941 $ hg cat -r "parents(.)" --output tmp/%d/otherfoobar s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
942 $ diff tmp/s/otherfoobar catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
943 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
944 $ hg cat -r "parents(.)" --output tmp/%p s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
945 $ diff tmp/s/foobar catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
946 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
947 $ hg cat -r "parents(.)" --output tmp/%H s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
948 $ diff tmp/255ee8cf690ec86e99b1e80147ea93ece117cd9d catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
949 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
950 $ hg cat -r "parents(.)" --output tmp/%R s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
951 $ diff tmp/10 catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
952 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
953 $ hg cat -r "parents(.)" --output tmp/%h s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
954 $ diff tmp/255ee8cf690e catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
955 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
956 $ rm tmp/10 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
957 $ hg cat -r "parents(.)" --output tmp/%r s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
958 $ diff tmp/10 catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
959 |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
960 $ mkdir tmp/tc |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
961 $ hg cat -r "parents(.)" --output tmp/%b/foobar s/foobar |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
962 $ diff tmp/tc/foobar catparents |
07c1a7d1ef69
subrepo: add 'cat' support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23963
diff
changeset
|
963 |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
964 cleanup |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
965 $ rm -r tmp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
966 $ rm catparents |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
967 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
968 add git files, using either files or patterns |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
969 $ echo "hsss! hsssssssh!" > s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
970 $ echo "ccc" > s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
971 $ echo "cpp" > s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
972 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
973 $ hg add s/snake.python s/c.c s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
974 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
975 M s/foobar |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
976 A s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
977 A s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
978 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
979 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
980 $ hg revert s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
981 reverting subrepo ../gitroot |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
982 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
983 $ hg add --subrepos "glob:**.python" |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
984 adding s/snake.python (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
985 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
986 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
987 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
988 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
989 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
990 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
991 $ hg revert s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
992 reverting subrepo ../gitroot |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
993 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
994 $ hg add --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
995 adding s/barfoo (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
996 adding s/c.c (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
997 adding s/cpp.cpp (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
998 adding s/foobar.orig (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
999 adding s/snake.python (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1000 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1001 A s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1002 A s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1003 A s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1004 A s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1005 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1006 $ hg revert s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1007 reverting subrepo ../gitroot |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1008 make sure everything is reverted correctly |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1009 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1010 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1011 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1012 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1013 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1014 ? s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1015 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1016 $ hg add --subrepos --exclude "path:s/c.c" |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1017 adding s/barfoo (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1018 adding s/cpp.cpp (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1019 adding s/foobar.orig (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1020 adding s/snake.python (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1021 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1022 A s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1023 A s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1024 A s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1025 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1026 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1027 $ hg revert --all -q |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1028 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1029 .hgignore should not have influence in subrepos |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1030 $ cat > .hgignore << EOF |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1031 > syntax: glob |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1032 > *.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1033 > EOF |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1034 $ hg add .hgignore |
24182
00ef3edcf1d5
subrepo: don't exclude files in .hgignore when adding to git
Matt Harbison <matt_harbison@yahoo.com>
parents:
24174
diff
changeset
|
1035 $ hg add --subrepos "glob:**.python" s/barfoo |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1036 adding s/snake.python (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1037 $ hg st --subrepos s |
24182
00ef3edcf1d5
subrepo: don't exclude files in .hgignore when adding to git
Matt Harbison <matt_harbison@yahoo.com>
parents:
24174
diff
changeset
|
1038 A s/barfoo |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1039 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1040 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1041 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1042 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1043 $ hg revert --all -q |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1044 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1045 .gitignore should have influence, |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1046 except for explicitly added files (no patterns) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1047 $ cat > s/.gitignore << EOF |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1048 > *.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1049 > EOF |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1050 $ hg add s/.gitignore |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1051 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1052 A s/.gitignore |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1053 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1054 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1055 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1056 ? s/foobar.orig |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1057 $ hg st --subrepos s --all |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1058 A s/.gitignore |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1059 ? s/barfoo |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1060 ? s/c.c |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1061 ? s/cpp.cpp |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1062 ? s/foobar.orig |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1063 I s/snake.python |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1064 C s/f |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1065 C s/foobar |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1066 C s/g |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1067 $ hg add --subrepos "glob:**.python" |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1068 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1069 A s/.gitignore |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1070 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1071 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1072 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1073 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1074 $ hg add --subrepos s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1075 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1076 A s/.gitignore |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1077 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1078 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1079 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1080 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1081 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1082 |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1083 correctly do a dry run |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1084 $ hg add --subrepos s --dry-run |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1085 adding s/barfoo (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1086 adding s/c.c (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1087 adding s/cpp.cpp (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1088 adding s/foobar.orig (glob) |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1089 $ hg st --subrepos s |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1090 A s/.gitignore |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1091 A s/snake.python |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1092 ? s/barfoo |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1093 ? s/c.c |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1094 ? s/cpp.cpp |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1095 ? s/foobar.orig |
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1096 |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1097 error given when adding an already tracked file |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1098 $ hg add s/.gitignore |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1099 s/.gitignore already tracked! |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1100 [1] |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1101 $ hg add s/g |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1102 s/g already tracked! |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1103 [1] |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1104 |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1105 removed files can be re-added |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1106 removing files using 'rm' or 'git rm' has the same effect, |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1107 since we ignore the staging area |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1108 $ hg ci --subrepos -m 'snake' |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1109 committing subrepository s |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1110 $ cd s |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1111 $ rm snake.python |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1112 (remove leftover .hg so Mercurial doesn't look for a root here) |
24581
85219d6ece67
tests: handle deleted .hg directory (git 2.2.0 and higher) (issue4585)
Mathias De Maré <mathias.demare@gmail.com>
parents:
24256
diff
changeset
|
1113 $ rm -rf .hg |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1114 $ hg status --subrepos --all . |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1115 R snake.python |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1116 ? barfoo |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1117 ? c.c |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1118 ? cpp.cpp |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1119 ? foobar.orig |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1120 C .gitignore |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1121 C f |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1122 C foobar |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1123 C g |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1124 $ git rm snake.python |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1125 rm 'snake.python' |
24256
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1126 $ hg status --subrepos --all . |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1127 R snake.python |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1128 ? barfoo |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1129 ? c.c |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1130 ? cpp.cpp |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1131 ? foobar.orig |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1132 C .gitignore |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1133 C f |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1134 C foobar |
e964edc3274e
subrepo: add status support for ignored and clean files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
24183
diff
changeset
|
1135 C g |
24183
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1136 $ touch snake.python |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1137 $ cd .. |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1138 $ hg add s/snake.python |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1139 $ hg status -S |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1140 M s/snake.python |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1141 ? .hgignore |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1142 ? s/barfoo |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1143 ? s/c.c |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1144 ? s/cpp.cpp |
932de135041f
subrepo: warn when adding already tracked files in gitsubrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
24182
diff
changeset
|
1145 ? s/foobar.orig |
24943
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1146 $ hg revert --all -q |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1147 |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1148 make sure we show changed files, rather than changed subtrees |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1149 $ mkdir s/foo |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1150 $ touch s/foo/bwuh |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1151 $ hg add s/foo/bwuh |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1152 $ hg commit -S -m "add bwuh" |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1153 committing subrepository s |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1154 $ hg status -S --change . |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1155 M .hgsubstate |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1156 A s/foo/bwuh |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1157 ? s/barfoo |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1158 ? s/c.c |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1159 ? s/cpp.cpp |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1160 ? s/foobar.orig |
3e39f67ef663
subrepo: correctly handle git subdirectory status change
Mathias De Maré <mathias.demare@gmail.com>
parents:
24924
diff
changeset
|
1161 ? s/snake.python.orig |
24174
bd9f64ec891d
subrepos: support adding files in git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23991
diff
changeset
|
1162 |
32902
642feee29d70
tests: protect tests involving git ext::sh with git-ext-sh
Sean Farley <sean@farley.io>
parents:
32413
diff
changeset
|
1163 #if git19 |
642feee29d70
tests: protect tests involving git ext::sh with git-ext-sh
Sean Farley <sean@farley.io>
parents:
32413
diff
changeset
|
1164 |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1165 test for Git CVE-2016-3068 |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1166 $ hg init malicious-subrepository |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1167 $ cd malicious-subrepository |
29295
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1168 $ echo "s = [git]ext::sh -c echo% pwned:% \$PWNED_MSG% >pwned.txt" > .hgsub |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1169 $ git init s |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1170 Initialized empty Git repository in $TESTTMP/tc/malicious-subrepository/s/.git/ |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1171 $ cd s |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1172 $ git commit --allow-empty -m 'empty' |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1173 [master (root-commit) 153f934] empty |
23523
01a8dfc79cdc
subrepo: add partial diff support for git subrepos
Mathias De Maré <mathias.demare@gmail.com>
parents:
23411
diff
changeset
|
1174 $ cd .. |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1175 $ hg add .hgsub |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1176 $ hg commit -m "add subrepo" |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1177 $ cd .. |
29256
1f8b861ba15c
tests-subrepo-git: make the "pwned" message output in a stable order
Danek Duvall <danek.duvall@oracle.com>
parents:
28939
diff
changeset
|
1178 $ rm -f pwned.txt |
29135
3879d02cd1cc
subrepo: use unset instead of env -u to fix test on BSDs (issue5229)
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents:
28939
diff
changeset
|
1179 $ unset GIT_ALLOW_PROTOCOL |
29328 | 1180 $ PWNED_MSG="your git is too old or mercurial has regressed" hg clone \ |
29257
a9764ab80e11
tests-subrepo-git: emit a different "pwned" message based on the test
Danek Duvall <danek.duvall@oracle.com>
parents:
29256
diff
changeset
|
1181 > malicious-subrepository malicious-subrepository-protected |
28939
ce01b4810aef
test-subrepo-git: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
28670
diff
changeset
|
1182 Cloning into '$TESTTMP/tc/malicious-subrepository-protected/s'... (glob) |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1183 fatal: transport 'ext' not allowed |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1184 updating to branch default |
29295
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1185 cloning subrepo s from ext::sh -c echo% pwned:% $PWNED_MSG% >pwned.txt |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
1186 abort: git clone error 128 in s (in subrepository "s") |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1187 [255] |
29295
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1188 $ f -Dq pwned.txt |
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1189 pwned.txt: file not found |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1190 |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1191 whitelisting of ext should be respected (that's the git submodule behaviour) |
29256
1f8b861ba15c
tests-subrepo-git: make the "pwned" message output in a stable order
Danek Duvall <danek.duvall@oracle.com>
parents:
28939
diff
changeset
|
1192 $ rm -f pwned.txt |
29257
a9764ab80e11
tests-subrepo-git: emit a different "pwned" message based on the test
Danek Duvall <danek.duvall@oracle.com>
parents:
29256
diff
changeset
|
1193 $ env GIT_ALLOW_PROTOCOL=ext PWNED_MSG="you asked for it" hg clone \ |
a9764ab80e11
tests-subrepo-git: emit a different "pwned" message based on the test
Danek Duvall <danek.duvall@oracle.com>
parents:
29256
diff
changeset
|
1194 > malicious-subrepository malicious-subrepository-clone-allowed |
28939
ce01b4810aef
test-subrepo-git: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
28670
diff
changeset
|
1195 Cloning into '$TESTTMP/tc/malicious-subrepository-clone-allowed/s'... (glob) |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1196 fatal: Could not read from remote repository. |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1197 |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1198 Please make sure you have the correct access rights |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1199 and the repository exists. |
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1200 updating to branch default |
29295
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1201 cloning subrepo s from ext::sh -c echo% pwned:% $PWNED_MSG% >pwned.txt |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
32902
diff
changeset
|
1202 abort: git clone error 128 in s (in subrepository "s") |
28658
34d43cb85de8
subrepo: set GIT_ALLOW_PROTOCOL to limit git clone protocols (SEC)
Mateusz Kwapich <mitrandir@fb.com>
parents:
26969
diff
changeset
|
1203 [255] |
29295
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1204 $ f -Dq pwned.txt |
9b4f0ad02f51
tests-subrepo-git: use "f" to dump pwned.txt, for portability
Danek Duvall <danek.duvall@oracle.com>
parents:
29257
diff
changeset
|
1205 pwned: you asked for it |
32902
642feee29d70
tests: protect tests involving git ext::sh with git-ext-sh
Sean Farley <sean@farley.io>
parents:
32413
diff
changeset
|
1206 |
642feee29d70
tests: protect tests involving git ext::sh with git-ext-sh
Sean Farley <sean@farley.io>
parents:
32413
diff
changeset
|
1207 #endif |
33658
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1208 |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1209 test for ssh exploit with git subrepos 2017-07-25 |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1210 |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1211 $ hg init malicious-proxycommand |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1212 $ cd malicious-proxycommand |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1213 $ echo 's = [git]ssh://-oProxyCommand=rm${IFS}non-existent/path' > .hgsub |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1214 $ git init s |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1215 Initialized empty Git repository in $TESTTMP/tc/malicious-proxycommand/s/.git/ |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1216 $ cd s |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1217 $ git commit --allow-empty -m 'empty' |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1218 [master (root-commit) 153f934] empty |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1219 $ cd .. |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1220 $ hg add .hgsub |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1221 $ hg ci -m 'add subrepo' |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1222 $ cd .. |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1223 $ hg clone malicious-proxycommand malicious-proxycommand-clone |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1224 updating to branch default |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1225 abort: potentially unsafe url: 'ssh://-oProxyCommand=rm${IFS}non-existent/path' (in subrepository "s") |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1226 [255] |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1227 |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1228 also check that a percent encoded '-' (%2D) doesn't work |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1229 |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1230 $ cd malicious-proxycommand |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1231 $ echo 's = [git]ssh://%2DoProxyCommand=rm${IFS}non-existent/path' > .hgsub |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1232 $ hg ci -m 'change url to percent encoded' |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1233 $ cd .. |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1234 $ rm -r malicious-proxycommand-clone |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1235 $ hg clone malicious-proxycommand malicious-proxycommand-clone |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1236 updating to branch default |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1237 abort: potentially unsafe url: 'ssh://-oProxyCommand=rm${IFS}non-existent/path' (in subrepository "s") |
db83a1df03fe
subrepo: add tests for git rogue ssh urls (SEC)
Sean Farley <sean@farley.io>
parents:
33365
diff
changeset
|
1238 [255] |