##// END OF EJS Templates
narrowspec: use sparse.parseconfig() to parse narrowspec file (BC)...
narrowspec: use sparse.parseconfig() to parse narrowspec file (BC) This also make narrow files use 'include' and 'exclude' instead of plural forms which are 'includes' and 'excludes'. This is BC because existing narrowspecs have to replace excludes, includes words with exclude and include i.e. their singular versions. Differential Revision: https://phab.mercurial-scm.org/D4057

File last commit:

r35173:ba6324ee stable
r38875:f64ebe7d default
Show More
test-amend-subrepo.t
154 lines | 2.5 KiB | text/troff | Tads3Lexer
/ tests / test-amend-subrepo.t
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 #testcases obsstore-off obsstore-on
$ cat << EOF >> $HGRCPATH
> [extensions]
> amend =
> EOF
#if obsstore-on
$ cat << EOF >> $HGRCPATH
> [experimental]
> evolution.createmarkers = True
> EOF
#endif
Prepare parent repo
-------------------
$ hg init r
$ cd r
$ echo a > a
$ hg ci -Am0
adding a
Link first subrepo
------------------
$ echo 's = s' >> .hgsub
$ hg add .hgsub
$ hg init s
amend without .hgsub
$ hg amend s
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 abort: can't commit subrepos without .hgsub
[255]
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017
amend with subrepo
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
$ hg status --change .
A .hgsub
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 A .hgsubstate
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 A a
$ cat .hgsubstate
0000000000000000000000000000000000000000 s
Update subrepo
--------------
add new commit to be amended
$ echo a >> a
$ hg ci -m1
amend with dirty subrepo
$ echo a >> s/a
$ hg add -R s
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 adding s/a
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 $ hg amend
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 abort: uncommitted changes in subrepository "s"
(use --subrepos for recursive commit)
[255]
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017
amend with modified subrepo
$ hg ci -R s -m0
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 $ hg status --change .
M .hgsubstate
M a
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 $ cat .hgsubstate
f7b1eb17ad24730a1651fccd46c43826d1bbc2ac s
revert subrepo change
$ hg up -R s -q null
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
$ hg status --change .
M a
Link another subrepo
--------------------
add new commit to be amended
$ echo b >> b
$ hg ci -qAm2
also checks if non-subrepo change is included
$ echo a >> a
amend with another subrepo
$ hg init t
$ echo b >> t/b
$ hg ci -R t -Am0
adding b
$ echo 't = t' >> .hgsub
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
$ hg status --change .
M .hgsub
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 M .hgsubstate
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 M a
A b
$ cat .hgsubstate
0000000000000000000000000000000000000000 s
bfb1a4fb358498a9533dabf4f2043d94162f1fcd t
Unlink one subrepo
------------------
add new commit to be amended
$ echo a >> a
$ hg ci -m3
amend with one subrepo dropped
$ echo 't = t' > .hgsub
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
$ hg status --change .
M .hgsub
Yuya Nishihara
amend: update .hgsubstate before committing a memctx (issue5677)...
r35019 M .hgsubstate
Yuya Nishihara
tests: demonstrate that .hgsubstate isn't updated on amend...
r35017 M a
$ cat .hgsubstate
bfb1a4fb358498a9533dabf4f2043d94162f1fcd t
Unlink subrepos completely
--------------------------
add new commit to be amended
$ echo a >> a
$ hg ci -m3
amend with .hgsub removed
$ hg rm .hgsub
$ hg amend
saved backup bundle to * (glob) (obsstore-off !)
$ hg status --change .
M a
R .hgsub
R .hgsubstate
$ cd ..