tests/test-share.t
author Martin von Zweigbergk <martinvonz@google.com>
Thu, 30 Apr 2020 10:05:14 -0700
changeset 5341 13376ca93fa3
parent 4488 6c0992ce05f7
permissions -rw-r--r--
evolve: always create commit when resolving divergence When resolving content-divergence, the final commit we create may end up empty (which means that Mercurial won't even create it). We've had code for handling that in evolve ever since 41bf6c27a122 (evolve: stabilize now handle conflicting changeset, 2012-08-23). However, that resolved the issue by marking on the divergent commits as successor. As Pierre-Yves has pointed out (in other code reviews), we should instead be creating a new successor. So that's what this patch does. It does that by setting `ui.allowemptycommit` while creating the final commit. However, that is not enough, because we may end up creating the same nodeid as already existed (we'd then end up trying to mark the "new" commit a successor of itself). To solve that, we add some salt to the commit extras. That salt affects lots of tests.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4487
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     1
Test that share-clones use the cache in the original repository.
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     2
4488
6c0992ce05f7 compat: drop getcachevfs, repo.cachevfs is supported in hg 4.4
Joerg Sonnenberger <joerg@bec.de>
parents: 4487
diff changeset
     3
  $ . $TESTDIR/testlib/common.sh
6c0992ce05f7 compat: drop getcachevfs, repo.cachevfs is supported in hg 4.4
Joerg Sonnenberger <joerg@bec.de>
parents: 4487
diff changeset
     4
4487
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     5
  $ hg init share-base
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     6
  $ cd share-base/
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     7
  $ cat >> .hg/hgrc <<EOF
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     8
  > [extensions]
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
     9
  > evolve=
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    10
  > share=
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    11
  > EOF
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    12
  $ hg debugbuilddag .+3:branchpoint+4*branchpoint+2
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    13
  $ cd ..
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    14
  $ hg --config extensions.share= share -U share-base share-client
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    15
  $ cd share-client
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    16
  $ hg debugupdatecache
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    17
  $ test -d .hg/cache
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    18
  [1]
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    19
  $ test -d ../share-base/.hg/cache
d972041022cb evolve: when using evolve, cache files belong into the master repo
Joerg Sonnenberger <joerg@bec.de>
parents:
diff changeset
    20