Mercurial > hg
view tests/test-merge5.t @ 28202:a4692267bc2d
hg: perform update after pulling during clone with share (issue5103)
When pooled storage is enabled, `hg clone` will initialize a repo
from a local repo using the store sharing mechanism then pull from
the originally requested repo.
Before this patch, the working directory update occurred between
these steps. This meant that we would only update to revisions that
were already present in the local pooled storage.
This patch moves the update to after we pull from the originally
requested repository so we may check out a revision that didn't yet
exist locally. In other words, it makes the behavior like normal
`hg clone`.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sat, 20 Feb 2016 17:44:29 -0800 |
parents | 6b1fc09c699a |
children | 527ce85c2e60 |
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 $ rm b $ hg update -c 2 abort: uncommitted changes [255] $ hg revert b $ hg update -c 2 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