Mercurial > hg
view tests/test-merge5.t @ 24409:30b8db6d0c04
subrepo: add the parent context to hgsubrepo
This brings parity with gitsubrepo and svnsubrepo (which already reference their
parent), and will be used in an upcoming patch.
I'm a bit concerned that the parent context could get stale (consider what
happens when the parent repo is reverted for example). I tried adding the
parent context to the substate tuple so that the parent is available everywhere
a state change is possible, but that made submerge() unhappy. Even with
removing the parent context inside submerge(), I wasn't able to get all of the
test diffs fixed.
But since the other subrepos reference their parent too, if there is a problem,
it is a preexisting one (that nobody seems to be running into). It can be fixed
if/when it pops up.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Wed, 18 Mar 2015 22:56:41 -0400 |
parents | fe80fdf68ba7 |
children | 72072cfc7e91 |
line wrap: on
line source
$ hg init $ echo This is file a1 > a $ echo This is file b1 > b $ hg add a b $ hg commit -m "commit #0" $ echo This is file b22 > b $ hg commit -m "comment #1" $ hg update 0 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ rm b $ hg commit -A -m "comment #2" removing b created new head $ hg update 1 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ hg update abort: not a linear update (merge or update --check to force update) [255] $ rm b $ hg update -c abort: uncommitted changes [255] $ hg revert b $ hg update -c 0 files updated, 0 files merged, 1 files removed, 0 files unresolved $ mv a c Should abort: $ hg update 1 abort: uncommitted changes (commit or update --clean to discard changes) [255] $ mv c a Should succeed: $ hg update 1 1 files updated, 0 files merged, 0 files removed, 0 files unresolved