##// END OF EJS Templates
commands: centralize code to update with extra care for non-file components...
commands: centralize code to update with extra care for non-file components This patch centralizes similar code paths to update the working directory with extra care for non-file components (e.g. bookmark) into newly added function updatetotally(). 'if True' at the beginning of updatetotally() is redundant at this patch, but useful to reduce amount of changes in subsequent patch.

File last commit:

r25865:a48a7c2d stable
r28501:66513f6c default
Show More
test-subrepo-missing.t
124 lines | 3.4 KiB | text/troff | Tads3Lexer
/ tests / test-subrepo-missing.t
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 $ hg init repo
$ cd repo
$ hg init subrepo
$ echo a > subrepo/a
$ hg -R subrepo ci -Am adda
adding a
$ echo 'subrepo = subrepo' > .hgsub
$ hg ci -Am addsubrepo
adding .hgsub
$ echo b > subrepo/b
$ hg -R subrepo ci -Am addb
adding b
$ hg ci -m updatedsub
Patrick Mezard
subrepo: ignore blank lines in .hgsubstate (issue3424)...
r16595 ignore blanklines in .hgsubstate
>>> file('.hgsubstate', 'wb').write('\n\n \t \n \n')
$ hg st --subrepos
M .hgsubstate
$ hg revert -qC .hgsubstate
Patrick Mezard
subrepo: do not traceback on .hgsubstate parsing errors...
r16596 abort more gracefully on .hgsubstate parsing error
$ cp .hgsubstate .hgsubstate.old
>>> file('.hgsubstate', 'wb').write('\ninvalid')
FUJIWARA Katsunori
subrepo: use repo.pathto instead of util.pathto to simplify invocation...
r25769 $ hg st --subrepos --cwd $TESTTMP -R $TESTTMP/repo
Matt Harbison
test-subrepo: fix globs for Windows...
r25865 abort: invalid subrepository revision specifier in 'repo/.hgsubstate' line 2
Patrick Mezard
subrepo: do not traceback on .hgsubstate parsing errors...
r16596 [255]
$ mv .hgsubstate.old .hgsubstate
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 delete .hgsub and revert it
$ rm .hgsub
$ hg revert .hgsub
Matt Harbison
subrepo: precisely identify the missing subrepo spec file...
r24645 warning: subrepo spec file '.hgsub' not found
warning: subrepo spec file '.hgsub' not found
warning: subrepo spec file '.hgsub' not found
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017
delete .hgsubstate and revert it
$ rm .hgsubstate
$ hg revert .hgsubstate
delete .hgsub and update
$ rm .hgsub
FUJIWARA Katsunori
subrepo: use repo.pathto instead of util.pathto to simplify invocation...
r25769 $ hg up 0 --cwd $TESTTMP -R $TESTTMP/repo
Matt Harbison
test-subrepo: fix globs for Windows...
r25865 warning: subrepo spec file 'repo/.hgsub' not found
warning: subrepo spec file 'repo/.hgsub' not found
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg st
Matt Harbison
subrepo: precisely identify the missing subrepo spec file...
r24645 warning: subrepo spec file '.hgsub' not found
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 ! .hgsub
$ ls subrepo
a
delete .hgsubstate and update
$ hg up -C
Matt Harbison
subrepo: precisely identify the missing subrepo spec file...
r24645 warning: subrepo spec file '.hgsub' not found
warning: subrepo spec file '.hgsub' not found
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm .hgsubstate
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg up 0
Patrick Mezard
subrepo: handle missing subrepo spec file as removed...
r13017 remote changed .hgsubstate which local deleted
use (c)hanged version or leave (d)eleted? c
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg st
$ ls subrepo
a
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
Angel Ezquerra
subrepo: make it possible to update to hidden subrepo revisions...
r20319 Enable obsolete
$ cat >> $HGRCPATH << EOF
> [ui]
> logtemplate= {rev}:{node|short} {desc|firstline}
> [phases]
> publish=False
Durham Goode
obsolete: update tests to use obsolete options...
r22955 > [experimental]
> evolution=createmarkers
Angel Ezquerra
subrepo: make it possible to update to hidden subrepo revisions...
r20319 > EOF
check that we can update parent repo with missing (amended) subrepo revision
$ hg up --repository subrepo -r tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg ci -m "updated subrepo to tip"
created new head
$ cd subrepo
$ hg update -r tip
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo foo > a
$ hg commit --amend -m "addb (amended)"
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..
Angel Ezquerra
subrepo: make it possible to update to hidden subrepo revisions...
r20319 $ hg update --clean .
revision 102a90ea7b4a in subrepo subrepo is hidden
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Matt Harbison
subrepo: propagate the --hidden option to hg subrepositories...
r24877 check that --hidden is propagated to the subrepo
$ hg -R subrepo up tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg ci -m 'commit with amended subrepo'
$ echo bar > subrepo/a
$ hg -R subrepo ci --amend -m "amend a (again)"
$ hg --hidden cat subrepo/a
foo
Matt Harbison
verify: check the subrepository references in .hgsubstate...
r25591 verify will warn if locked-in subrepo revisions are hidden or missing
$ hg ci -m "amended subrepo (again)"
$ hg --config extensions.strip= --hidden strip -R subrepo -qr 'tip'
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
2 files, 5 changesets, 5 total revisions
checking subrepo links
subrepo 'subrepo' is hidden in revision a66de08943b6
subrepo 'subrepo' is hidden in revision 674d05939c1e
subrepo 'subrepo' not found in revision a7d05d9055a4
Angel Ezquerra
subrepo: make it possible to update to hidden subrepo revisions...
r20319 $ cd ..