##// END OF EJS Templates
check-code: fix check for trailing whitespace on empty lines...
check-code: fix check for trailing whitespace on empty lines It seems like the intention with c7d23b4ca4ba was to catch lines with only one whitespace too.

File last commit:

r17345:4f8054d3 default
r17346:2944a6d3 default
Show More
test-subrepo.t
1023 lines | 23.7 KiB | text/troff | Tads3Lexer
Martin Geisler
subrepos: abort commit by default if a subrepo is dirty (BC)...
r15321 Let commit recurse into subrepos by default to match pre-2.0 behavior:
$ echo "[ui]" >> $HGRCPATH
$ echo "commitsubrepos = Yes" >> $HGRCPATH
Martin Geisler
tests: unify test-subrepo
r11912 $ hg init t
$ cd t
first revision, no sub
$ echo a > a
$ hg ci -Am0
adding a
add first sub
$ echo s = s > .hgsub
$ hg add .hgsub
$ hg init s
$ echo a > s/a
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue2232: committing a subrepo without .hgsub
Martin Geisler
tests: unify test-subrepo
r11912
$ hg ci -mbad s
abort: can't commit subrepos without .hgsub
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-subrepo
r11912
$ hg -R s ci -Ams0
adding a
$ hg sum
parent: 0:f7b1eb17ad24 tip
0
branch: default
commit: 1 added, 1 subrepos
update: (current)
$ hg ci -m1
Angel Ezquerra
tests: add test for fileset 'subrepo' keyword
r16454 Revert subrepo and test subrepo fileset keyword:
Angel Ezquerra
revert: warn that subrepos cannot be reverted...
r15265
$ echo b > s/a
Angel Ezquerra
tests: add test for fileset 'subrepo' keyword
r16454 $ hg revert "set:subrepo('glob:s*')"
Angel Ezquerra
revert: add support for reverting subrepos without --no-backup and/or --all...
r16430 reverting subrepo s
Mads Kiilerich
tests: add missing accept of native pathname separator
r16540 reverting s/a (glob)
Angel Ezquerra
revert: add support for reverting subrepos without --no-backup and/or --all...
r16430 $ rm s/a.orig
Angel Ezquerra
revert: warn that subrepos cannot be reverted...
r15265
Angel Ezquerra
revert: add support for reverting subrepos without --no-backup and/or --all...
r16430 Revert subrepo with no backup. The "reverting s/a" line is gone since
we're really running 'hg update' in the subrepo:
$ echo b > s/a
$ hg revert --no-backup s
reverting subrepo s
Angel Ezquerra
revert: warn that subrepos cannot be reverted...
r15265
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue2022: update -C
Martin Geisler
tests: unify test-subrepo
r11912
$ echo b > s/a
$ hg sum
parent: 1:7cf8cfea66e4 tip
1
branch: default
commit: 1 subrepos
update: (current)
$ hg co -C 1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg sum
parent: 1:7cf8cfea66e4 tip
1
branch: default
commit: (clean)
update: (current)
Eric Roshan Eisner
cmdutil.bailifchanged: abort for dirty subrepos
r15231 commands that require a clean repo should respect subrepos
$ echo b >> s/a
$ hg backout tip
abort: uncommitted changes in subrepo s
[255]
$ hg revert -C -R s s/a
Martin Geisler
tests: unify test-subrepo
r11912 add sub sub
$ echo ss = ss > s/.hgsub
$ hg init s/ss
$ echo a > s/ss/a
$ hg -R s add s/.hgsub
$ hg -R s/ss add s/ss/a
$ hg sum
parent: 1:7cf8cfea66e4 tip
1
branch: default
commit: 1 subrepos
update: (current)
$ hg ci -m2
committing subrepository s
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 committing subrepository s/ss (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg sum
parent: 2:df30734270ae tip
2
branch: default
commit: (clean)
update: (current)
Patrick Mezard
commit: abort if a subrepo is modified and ui.commitsubrepos=no...
r13411 bump sub rev (and check it is ignored by ui.commitsubrepos)
Martin Geisler
tests: unify test-subrepo
r11912
$ echo b > s/a
$ hg -R s ci -ms1
Patrick Mezard
commit: abort if a subrepo is modified and ui.commitsubrepos=no...
r13411 $ hg --config ui.commitsubrepos=no ci -m3
Martin Geisler
tests: unify test-subrepo
r11912
Patrick Mezard
commit: abort if a subrepo is modified and ui.commitsubrepos=no...
r13411 leave sub dirty (and check ui.commitsubrepos=no aborts the commit)
Martin Geisler
tests: unify test-subrepo
r11912
$ echo c > s/a
Patrick Mezard
commit: abort if a subrepo is modified and ui.commitsubrepos=no...
r13411 $ hg --config ui.commitsubrepos=no ci -m4
abort: uncommitted changes in subrepo s
Martin Geisler
subrepos: abort commit by default if a subrepo is dirty (BC)...
r15321 (use --subrepos for recursive commit)
Patrick Mezard
commit: abort if a subrepo is modified and ui.commitsubrepos=no...
r13411 [255]
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 $ hg id
f6affe3fbfaa+ tip
$ hg -R s ci -mc
$ hg id
f6affe3fbfaa+ tip
$ echo d > s/a
Martin Geisler
tests: unify test-subrepo
r11912 $ hg ci -m4
committing subrepository s
$ hg tip -R s
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 changeset: 4:02dcf1d70411
Martin Geisler
tests: unify test-subrepo
r11912 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 4
check caching
$ hg co 0
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ hg debugsub
restore
$ hg co
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg debugsub
path s
source s
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 revision 02dcf1d704118aee3ee306ccfa1910850d5b05ef
Martin Geisler
tests: unify test-subrepo
r11912
new branch for merge tests
$ hg co 1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo t = t >> .hgsub
$ hg init t
$ echo t > t/t
$ hg -R t add t
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding t/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912
5
$ hg ci -m5 # add sub
committing subrepository t
created new head
$ echo t2 > t/t
6
$ hg st -R s
$ hg ci -m6 # change sub
committing subrepository t
$ hg debugsub
path s
source s
revision e4ece1bf43360ddc8f6a96432201a37b7cd27ae4
path t
source t
revision 6747d179aa9a688023c4b0cad32e4c92bb7f34ad
$ echo t3 > t/t
7
$ hg ci -m7 # change sub again for conflict test
committing subrepository t
$ hg rm .hgsub
8
$ hg ci -m8 # remove sub
merge tests
$ hg co -C 3
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 5 # test adding
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg debugsub
path s
source s
revision fc627a69481fcbe5f1135069e8a3881c023e4cf5
path t
source t
revision 60ca1237c19474e7a3978b0dc1ca4e6f36d51382
$ hg ci -m9
created new head
$ hg merge 6 --debug # test change
searching for copies back to rev 2
resolving manifests
Martin Geisler
merge: make debug output easier to read...
r15625 overwrite: False, partial: False
ancestor: 1f14a2e2d3ec, local: f0d2028bf86d+, remote: 1831e14459c4
Martin Geisler
tests: unify test-subrepo
r11912 .hgsubstate: versions differ -> m
updating: .hgsubstate 1/1 files (100.00%)
subrepo merge f0d2028bf86d+ 1831e14459c4 1f14a2e2d3ec
subrepo t: other changed, get t:6747d179aa9a688023c4b0cad32e4c92bb7f34ad:hg
getting subrepo t
resolving manifests
Martin Geisler
merge: make debug output easier to read...
r15625 overwrite: True, partial: False
ancestor: 60ca1237c194+, local: 60ca1237c194+, remote: 6747d179aa9a
Martin Geisler
tests: unify test-subrepo
r11912 t: remote is newer -> g
updating: t 1/1 files (100.00%)
getting t
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg debugsub
path s
source s
revision fc627a69481fcbe5f1135069e8a3881c023e4cf5
path t
source t
revision 6747d179aa9a688023c4b0cad32e4c92bb7f34ad
$ echo conflict > t/t
$ hg ci -m10
committing subrepository t
$ HGMERGE=internal:merge hg merge --debug 7 # test conflict
searching for copies back to rev 2
resolving manifests
Martin Geisler
merge: make debug output easier to read...
r15625 overwrite: False, partial: False
ancestor: 1831e14459c4, local: e45c8b14af55+, remote: f94576341bcf
Martin Geisler
tests: unify test-subrepo
r11912 .hgsubstate: versions differ -> m
updating: .hgsubstate 1/1 files (100.00%)
subrepo merge e45c8b14af55+ f94576341bcf 1831e14459c4
subrepo t: both sides changed, merge with t:7af322bc1198a32402fe903e0b7ebcfc5c9bf8f4:hg
merging subrepo t
searching for copies back to rev 2
resolving manifests
Martin Geisler
merge: make debug output easier to read...
r15625 overwrite: False, partial: False
ancestor: 6747d179aa9a, local: 20a0db6fbf6c+, remote: 7af322bc1198
Martin Geisler
tests: unify test-subrepo
r11912 t: versions differ -> m
preserving t for resolve of t
updating: t 1/1 files (100.00%)
picked tool 'internal:merge' for t (binary False symlink False)
merging t
my t@20a0db6fbf6c+ other t@7af322bc1198 ancestor t@6747d179aa9a
warning: conflicts during merge.
Matt Mackall
merge: give a special message for internal:merge failure (issue3105)
r15501 merging t incomplete! (edit conflicts, then use 'hg resolve --mark')
Martin Geisler
tests: unify test-subrepo
r11912 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
Brodie Rao
merge: suggest 'hg up -C .' for discarding changes, not 'hg up -C'...
r12314 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
Martin Geisler
tests: unify test-subrepo
r11912 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
should conflict
$ cat t/t
<<<<<<< local
conflict
=======
t3
>>>>>>> other
clone
$ cd ..
$ hg clone t tc
updating to branch default
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 cloning subrepo s from $TESTTMP/t/s (glob)
cloning subrepo s/ss from $TESTTMP/t/s/ss (glob)
cloning subrepo t from $TESTTMP/t/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd tc
$ hg debugsub
path s
source s
revision fc627a69481fcbe5f1135069e8a3881c023e4cf5
path t
source t
revision 20a0db6fbf6c3d2836e6519a642ae929bfc67c0e
push
$ echo bah > t/t
$ hg ci -m11
committing subrepository t
$ hg push
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing to $TESTTMP/t (glob)
pushing subrepo s/ss to $TESTTMP/t/s/ss (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
no changes found
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing subrepo s to $TESTTMP/t/s (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
no changes found
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing subrepo t to $TESTTMP/t/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
push -f
$ echo bah > s/a
$ hg ci -m12
committing subrepository s
$ hg push
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing to $TESTTMP/t (glob)
pushing subrepo s/ss to $TESTTMP/t/s/ss (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
no changes found
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing subrepo s to $TESTTMP/t/s (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
Adrian Buehlmann
prepush: print short hash of first new head in abort message...
r14525 abort: push creates new remote head 12a213df6fa9!
Martin Geisler
tests: unify test-subrepo
r11912 (did you forget to merge? use push -f to force)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-subrepo
r11912 $ hg push -f
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing to $TESTTMP/t (glob)
pushing subrepo s/ss to $TESTTMP/t/s/ss (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
no changes found
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing subrepo s to $TESTTMP/t/s (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing subrepo t to $TESTTMP/t/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
no changes found
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
update
$ cd ../t
$ hg up -C # discard our earlier merge
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo blah > t/t
$ hg ci -m13
committing subrepository t
pull
$ cd ../tc
$ hg pull
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pulling from $TESTTMP/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
(run 'hg update' to get a working copy)
should pull t
$ hg up
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pulling subrepo t from $TESTTMP/t/t (glob)
Martin Geisler
tests: unify test-subrepo
r11912 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cat t/t
blah
bogus subrepo path aborts
$ echo 'bogus=[boguspath' >> .hgsub
$ hg ci -m 'bogus subrepo path'
abort: missing ] in subrepo source
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-subrepo
r11912
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue1986: merge aborts when trying to merge a subrepo that
shouldn't need merging
Martin Geisler
tests: unify test-subrepo
r11912
# subrepo layout
#
# o 5 br
# /|
# o | 4 default
# | |
# | o 3 br
# |/|
# o | 2 default
# | |
# | o 1 br
# |/
# o 0 default
$ cd ..
$ rm -rf sub
$ hg init main
$ cd main
$ hg init s
$ cd s
$ echo a > a
$ hg ci -Am1
adding a
$ hg branch br
marked working directory as branch br
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Martin Geisler
tests: unify test-subrepo
r11912 $ echo a >> a
$ hg ci -m1
$ hg up default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo b > b
$ hg ci -Am1
adding b
$ hg up br
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg merge tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg ci -m1
$ hg up 2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo c > c
$ hg ci -Am1
adding c
$ hg up 3
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg merge 4
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg ci -m1
# main repo layout:
#
# * <-- try to merge default into br again
# .`|
# . o 5 br --> substate = 5
# . |
# o | 4 default --> substate = 4
# | |
# | o 3 br --> substate = 2
# |/|
# o | 2 default --> substate = 2
# | |
# | o 1 br --> substate = 3
# |/
# o 0 default --> substate = 2
$ cd ..
$ echo 's = s' > .hgsub
$ hg -R s up 2
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg ci -Am1
adding .hgsub
$ hg branch br
marked working directory as branch br
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Martin Geisler
tests: unify test-subrepo
r11912 $ echo b > b
$ hg -R s up 3
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg ci -Am1
adding b
$ hg up default
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo c > c
$ hg ci -Am1
adding c
$ hg up 1
2 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg merge 2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg ci -m1
$ hg up 2
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg -R s up 4
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo d > d
$ hg ci -Am1
adding d
$ hg up 3
2 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg -R s up 5
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo e > e
$ hg ci -Am1
adding e
$ hg up 5
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 4 # try to merge default into br again
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ cd ..
test subrepo delete from .hgsubstate
$ hg init testdelete
$ mkdir testdelete/nested testdelete/nested2
$ hg init testdelete/nested
$ hg init testdelete/nested2
$ echo test > testdelete/nested/foo
$ echo test > testdelete/nested2/foo
$ hg -R testdelete/nested add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding testdelete/nested/foo (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R testdelete/nested2 add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding testdelete/nested2/foo (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R testdelete/nested ci -m test
$ hg -R testdelete/nested2 ci -m test
$ echo nested = nested > testdelete/.hgsub
$ echo nested2 = nested2 >> testdelete/.hgsub
$ hg -R testdelete add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding testdelete/.hgsub (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R testdelete ci -m "nested 1 & 2 added"
$ echo nested = nested > testdelete/.hgsub
$ hg -R testdelete ci -m "nested 2 deleted"
$ cat testdelete/.hgsubstate
bdf5c9a3103743d900b12ae0db3ffdcfd7b0d878 nested
$ hg -R testdelete remove testdelete/.hgsub
$ hg -R testdelete ci -m ".hgsub deleted"
$ cat testdelete/.hgsubstate
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 bdf5c9a3103743d900b12ae0db3ffdcfd7b0d878 nested
Martin Geisler
tests: unify test-subrepo
r11912
test repository cloning
$ mkdir mercurial mercurial2
$ hg init nested_absolute
$ echo test > nested_absolute/foo
$ hg -R nested_absolute add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding nested_absolute/foo (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R nested_absolute ci -mtest
$ cd mercurial
$ hg init nested_relative
$ echo test2 > nested_relative/foo2
$ hg -R nested_relative add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding nested_relative/foo2 (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R nested_relative ci -mtest2
$ hg init main
$ echo "nested_relative = ../nested_relative" > main/.hgsub
$ echo "nested_absolute = `pwd`/nested_absolute" >> main/.hgsub
$ hg -R main add
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 adding main/.hgsub (glob)
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R main ci -m "add subrepos"
$ cd ..
$ hg clone mercurial/main mercurial2/main
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cat mercurial2/main/nested_absolute/.hg/hgrc \
> mercurial2/main/nested_relative/.hg/hgrc
[paths]
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 default = $TESTTMP/mercurial/nested_absolute
Martin Geisler
tests: unify test-subrepo
r11912 [paths]
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 default = $TESTTMP/mercurial/nested_relative
Martin Geisler
tests: unify test-subrepo
r11912 $ rm -rf mercurial mercurial2
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue1977: multirepo push should fail if subrepo push fails
Martin Geisler
tests: unify test-subrepo
r11912
$ hg init repo
$ hg init repo/s
$ echo a > repo/s/a
$ hg -R repo/s ci -Am0
adding a
$ echo s = s > repo/.hgsub
$ hg -R repo ci -Am1
adding .hgsub
$ hg clone repo repo2
updating to branch default
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 cloning subrepo s from $TESTTMP/repo/s (glob)
Martin Geisler
tests: unify test-subrepo
r11912 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -q -R repo2 pull -u
$ echo 1 > repo2/s/a
$ hg -R repo2/s ci -m2
$ hg -q -R repo2/s push
$ hg -R repo2/s up -C 0
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo 2 > repo2/s/a
$ hg -R repo2/s ci -m3
created new head
$ hg -R repo2 ci -m3
$ hg -q -R repo2 push
Adrian Buehlmann
prepush: print short hash of first new head in abort message...
r14525 abort: push creates new remote head 9d66565e64e1!
Martin Geisler
tests: unify test-subrepo
r11912 (did you forget to merge? use push -f to force)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-subrepo
r11912 $ hg -R repo update
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf repo2 repo
Mads Kiilerich
subrepo: abort instead of pushing/pulling to the repo itself...
r12753
Issue1852 subrepos with relative paths always push/pull relative to default
Prepare a repo with subrepo
$ hg init issue1852a
$ cd issue1852a
$ hg init sub/repo
$ echo test > sub/repo/foo
$ hg -R sub/repo add sub/repo/foo
$ echo sub/repo = sub/repo > .hgsub
$ hg add .hgsub
$ hg ci -mtest
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 committing subrepository sub/repo (glob)
Mads Kiilerich
subrepo: abort instead of pushing/pulling to the repo itself...
r12753 $ echo test >> sub/repo/foo
$ hg ci -mtest
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 committing subrepository sub/repo (glob)
Mads Kiilerich
subrepo: abort instead of pushing/pulling to the repo itself...
r12753 $ cd ..
Create repo without default path, pull top repo, and see what happens on update
$ hg init issue1852b
$ hg -R issue1852b pull issue1852a
pulling from issue1852a
requesting all changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 3 changes to 2 files
(run 'hg update' to get a working copy)
$ hg -R issue1852b update
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 abort: default path for subrepository sub/repo not found (glob)
Mads Kiilerich
subrepo: abort instead of pushing/pulling to the repo itself...
r12753 [255]
Pull -u now doesn't help
$ hg -R issue1852b pull -u issue1852a
pulling from issue1852a
searching for changes
no changes found
Try the same, but with pull -u
$ hg init issue1852c
$ hg -R issue1852c pull -r0 -u issue1852a
pulling from issue1852a
adding changesets
adding manifests
adding file changes
added 1 changesets with 2 changes to 2 files
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 cloning subrepo sub/repo from issue1852a/sub/repo (glob)
Mads Kiilerich
subrepo: propagate non-default pull/push path to relative subrepos (issue1852)
r12852 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
Mads Kiilerich
subrepo: abort instead of pushing/pulling to the repo itself...
r12753
Try to push from the other side
Mads Kiilerich
subrepo: propagate non-default pull/push path to relative subrepos (issue1852)
r12852 $ hg -R issue1852a push `pwd`/issue1852c
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 pushing to $TESTTMP/issue1852c
pushing subrepo sub/repo to $TESTTMP/issue1852c/sub/repo (glob)
Mads Kiilerich
subrepo: propagate non-default pull/push path to relative subrepos (issue1852)
r12852 searching for changes
no changes found
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Oleg Stepanov
subrepo: do not report known files inside repositories as unknown
r13233
Martin Geisler
subrepo: respect non-default path for incoming/outgoing...
r14360 Incoming and outgoing should not use the default path:
$ hg clone -q issue1852a issue1852d
$ hg -R issue1852d outgoing --subrepos issue1852c
comparing with issue1852c
searching for changes
no changes found
comparing with issue1852c/sub/repo
searching for changes
no changes found
[1]
$ hg -R issue1852d incoming --subrepos issue1852c
comparing with issue1852c
searching for changes
no changes found
comparing with issue1852c/sub/repo
searching for changes
no changes found
[1]
Oleg Stepanov
subrepo: do not report known files inside repositories as unknown
r13233 Check status of files when none of them belong to the first
subrepository:
$ hg init subrepo-status
$ cd subrepo-status
$ hg init subrepo-1
$ hg init subrepo-2
$ cd subrepo-2
$ touch file
$ hg add file
$ cd ..
$ echo subrepo-1 = subrepo-1 > .hgsub
$ echo subrepo-2 = subrepo-2 >> .hgsub
$ hg add .hgsub
$ hg ci -m 'Added subrepos'
committing subrepository subrepo-2
$ hg st subrepo-2/file
Erik Zielke
subrepo: make update -C clean the working directory for svn subrepos...
r13322
Check hg update --clean
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 $ cd $TESTTMP/t
Erik Zielke
subrepo: make update -C clean the working directory for svn subrepos...
r13322 $ rm -r t/t.orig
$ hg status -S --all
C .hgsub
C .hgsubstate
C a
C s/.hgsub
C s/.hgsubstate
C s/a
C s/ss/a
C t/t
$ echo c1 > s/a
$ cd s
$ echo c1 > b
$ echo c1 > c
$ hg add b
$ cd ..
$ hg status -S
M s/a
A s/b
? s/c
$ hg update -C
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg status -S
? s/b
? s/c
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417
Sticky subrepositories, no changes
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 $ cd $TESTTMP/t
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 $ hg id
925c17564ef8 tip
$ hg -R s id
12a213df6fa9 tip
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 52c0adc0515a tip
$ hg update 11
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id
365661e5936a
$ hg -R s id
fc627a69481f
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 e95bcfa18a35
Sticky subrepositorys, file changes
$ touch s/f1
$ touch t/f1
$ hg add -S s/f1
$ hg add -S t/f1
$ hg id
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 365661e5936a+
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 $ hg -R s id
fc627a69481f+
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 e95bcfa18a35+
$ hg update tip
subrepository sources for s differ
use (l)ocal source (fc627a69481f) or (r)emote source (12a213df6fa9)?
l
subrepository sources for t differ
use (l)ocal source (e95bcfa18a35) or (r)emote source (52c0adc0515a)?
l
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id
925c17564ef8+ tip
$ hg -R s id
fc627a69481f+
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 e95bcfa18a35+
$ hg update --clean tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Sticky subrepository, revision updates
$ hg id
925c17564ef8 tip
$ hg -R s id
12a213df6fa9 tip
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 52c0adc0515a tip
$ cd s
$ hg update -r -2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd ../t
$ hg update -r 2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd ..
$ hg update 10
subrepository sources for t differ (in checked out version)
use (l)ocal source (7af322bc1198) or (r)emote source (20a0db6fbf6c)?
l
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id
e45c8b14af55+
$ hg -R s id
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 02dcf1d70411
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 7af322bc1198
Sticky subrepository, file changes and revision updates
$ touch s/f1
$ touch t/f1
$ hg add -S s/f1
$ hg add -S t/f1
$ hg id
e45c8b14af55+
$ hg -R s id
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 02dcf1d70411+
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 7af322bc1198+
$ hg update tip
subrepository sources for s differ
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 use (l)ocal source (02dcf1d70411) or (r)emote source (12a213df6fa9)?
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 l
subrepository sources for t differ
use (l)ocal source (7af322bc1198) or (r)emote source (52c0adc0515a)?
l
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 925c17564ef8+ tip
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 $ hg -R s id
Patrick Mezard
identity: show trailing '+' for dirty subrepos (issue2839)
r17255 02dcf1d70411+
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 7af322bc1198+
Sticky repository, update --clean
$ hg update --clean tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id
925c17564ef8 tip
$ hg -R s id
12a213df6fa9 tip
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 52c0adc0515a tip
Test subrepo already at intended revision:
$ cd s
$ hg update fc627a69481f
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd ..
$ hg update 11
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg id -n
11+
$ hg -R s id
fc627a69481f
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg -R t id
Erik Zielke
subrepos: prompt on conflicts on update with dirty subrepos...
r13417 e95bcfa18a35
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536
Test that removing .hgsubstate doesn't break anything:
$ hg rm -f .hgsubstate
$ hg ci -mrm
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 nothing changed
[1]
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 $ hg log -vr tip
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 changeset: 13:925c17564ef8
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 files: .hgsubstate
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 description:
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 13
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536
Test that removing .hgsub removes .hgsubstate:
$ hg rm .hgsub
$ hg ci -mrm2
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 created new head
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 $ hg log -vr tip
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 changeset: 14:2400bccd50af
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 tag: tip
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 parent: 11:365661e5936a
Matt Mackall
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)...
r14536 user: test
date: Thu Jan 01 00:00:00 1970 +0000
files: .hgsub .hgsubstate
description:
rm2
Martin Geisler
test-subrepo: test for Issue3153
r15635 Test issue3153: diff -S with deleted subrepos
$ hg diff --nodates -S -c .
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 diff -r 365661e5936a -r 2400bccd50af .hgsub
Martin Geisler
test-subrepo: test for Issue3153
r15635 --- a/.hgsub
+++ /dev/null
@@ -1,2 +0,0 @@
-s = s
-t = t
Matt Mackall
subrepo: rewrite handling of subrepo state at commit (issue2403)...
r16073 diff -r 365661e5936a -r 2400bccd50af .hgsubstate
Martin Geisler
test-subrepo: test for Issue3153
r15635 --- a/.hgsubstate
+++ /dev/null
@@ -1,2 +0,0 @@
-fc627a69481fcbe5f1135069e8a3881c023e4cf5 s
-e95bcfa18a358dc4936da981ebf4147b4cad1362 t
Martin Geisler
merge with stable
r15636
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 Test behavior of add for explicit path in subrepo:
$ cd ..
David M. Carr
tests: add test for behavior of forget for explicit path in subrepo...
r15473 $ hg init explicit
$ cd explicit
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ echo s = s > .hgsub
$ hg add .hgsub
$ hg init s
$ hg ci -m0
David M. Carr
add: support adding explicit files in subrepos...
r15410 Adding with an explicit path in a subrepo adds the file
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ echo c1 > f1
$ echo c2 > s/f2
$ hg st -S
? f1
? s/f2
$ hg add s/f2
$ hg st -S
David M. Carr
add: support adding explicit files in subrepos...
r15410 A s/f2
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 ? f1
David M. Carr
add: support adding explicit files in subrepos...
r15410 $ hg ci -R s -m0
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ hg ci -Am1
adding f1
David M. Carr
add: support adding explicit files in subrepos...
r15410 Adding with an explicit path in a subrepo with -S has the same behavior
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ echo c3 > f3
$ echo c4 > s/f4
$ hg st -S
? f3
? s/f4
$ hg add -S s/f4
$ hg st -S
A s/f4
? f3
$ hg ci -R s -m1
$ hg ci -Ama2
adding f3
Adding without a path or pattern silently ignores subrepos
$ echo c5 > f5
$ echo c6 > s/f6
$ echo c7 > s/f7
$ hg st -S
? f5
? s/f6
? s/f7
$ hg add
adding f5
$ hg st -S
A f5
? s/f6
? s/f7
$ hg ci -R s -Am2
adding f6
adding f7
$ hg ci -m3
Adding without a path or pattern with -S also adds files in subrepos
$ echo c8 > f8
$ echo c9 > s/f9
$ echo c10 > s/f10
$ hg st -S
? f8
? s/f10
? s/f9
$ hg add -S
adding f8
Mads Kiilerich
tests: add missing '(glob)'s to match '\' in paths in test output on windows
r15520 adding s/f10 (glob)
adding s/f9 (glob)
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ hg st -S
A f8
A s/f10
A s/f9
$ hg ci -R s -m3
$ hg ci -m4
Adding with a pattern silently ignores subrepos
$ echo c11 > fm11
$ echo c12 > fn12
$ echo c13 > s/fm13
$ echo c14 > s/fn14
$ hg st -S
? fm11
? fn12
? s/fm13
? s/fn14
$ hg add 'glob:**fm*'
adding fm11
$ hg st -S
A fm11
? fn12
? s/fm13
? s/fn14
$ hg ci -R s -Am4
adding fm13
adding fn14
$ hg ci -Am5
adding fn12
Adding with a pattern with -S also adds matches in subrepos
$ echo c15 > fm15
$ echo c16 > fn16
$ echo c17 > s/fm17
$ echo c18 > s/fn18
$ hg st -S
? fm15
? fn16
? s/fm17
? s/fn18
$ hg add -S 'glob:**fm*'
adding fm15
Mads Kiilerich
tests: add missing '(glob)'s to match '\' in paths in test output on windows
r15520 adding s/fm17 (glob)
David M. Carr
tests: add test for add of explicit path in subrepo...
r15409 $ hg st -S
A fm15
A s/fm17
? fn16
? s/fn18
$ hg ci -R s -Am5
adding fn18
$ hg ci -Am6
adding fn16
David M. Carr
tests: add test for behavior of forget for explicit path in subrepo...
r15473
Test behavior of forget for explicit path in subrepo:
David M. Carr
forget: support forgetting explicit paths in subrepos...
r15474 Forgetting an explicit path in a subrepo untracks the file
David M. Carr
tests: add test for behavior of forget for explicit path in subrepo...
r15473 $ echo c19 > s/f19
$ hg add s/f19
$ hg st -S
A s/f19
$ hg forget s/f19
David M. Carr
forget: support forgetting explicit paths in subrepos...
r15474 $ hg st -S
? s/f19
David M. Carr
tests: add test for behavior of forget for explicit path in subrepo...
r15473 $ rm s/f19
Mads Kiilerich
tests: cleanup of tests that got lost in their own nested directories...
r16912 $ cd ..