view tests/test-discovery-hidden-common.t @ 5273:aca826b5bd4d

obslog: use unfiltered repo for --no-graph implementation too repo.unfiltered() is used for graph version of obslog, because if we want to filter non-local changesets, we only have to provide --filternonlocal flag on the command line and _nodesandmarkers() will handle filtering. But that means for obslog without -f to work correctly we need to provide unfiltered repo to that function. With this patch both implementations of obslog (--graph and --no-graph) see the same repo.
author Anton Shestakov <av6@dwimlabs.net>
date Sun, 03 May 2020 20:11:37 +0800
parents a60a478ee2fa
children 35e769c9604f
line wrap: on
line source

test for discovery with some remote changesets hidden locally
=============================================================

  $ . $TESTDIR/testlib/common.sh

  $ cat << EOF >> $HGRCPATH
  > [phases]
  > publish = false
  > [extensions]
  > evolve =
  > [experimental]
  > verbose-obsolescence-exchange = 1
  > [ui]
  > logtemplate = "{rev} {node|short} {desc} {tags}\n"
  > ssh = "$PYTHON" "$RUNTESTDIR/dummyssh"
  > EOF

  $ hg init server
  $ hg clone ssh://user@dummy/server client
  no changes found
  updating to branch default
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ cd server
  $ mkcommit root
  $ mkcommit A0

second pull:

  $ hg -R ../client pull
  pulling from ssh://user@dummy/server
  requesting all changes
  adding changesets
  adding manifests
  adding file changes
  added 2 changesets with 2 changes to 2 files
  new changesets 1e4be0697311:8aaa48160adc (2 drafts)
  (run 'hg update' to get a working copy)
  $ hg -R ../client log -G
  o  1 8aaa48160adc A0 tip
  |
  o  0 1e4be0697311 root
  

more update

  $ hg tag --local stay-visible
  $ hg up 0
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  $ mkcommit A1
  created new head
  $ hg debugobsolete `getid 'desc(A0)'` `getid 'desc(A1)'`
  1 new obsolescence markers
  obsoleted 1 changesets

second pull:

  $ hg -R ../client pull
  pulling from ssh://user@dummy/server
  searching for changes
  OBSEXC: looking for common markers in 2 nodes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 1 changes to 1 files (+1 heads)
  1 new obsolescence markers
  obsoleted 1 changesets
  new changesets f6082bc4ffef (1 drafts)
  (run 'hg heads' to see heads)
  $ hg -R ../client log -G
  o  2 f6082bc4ffef A1 tip
  |
  o  0 1e4be0697311 root
  

more update:

  $ hg up 0
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  $ mkcommit A2
  created new head
  $ hg debugobsolete `getid 'desc(A1)'` `getid 'desc(A2)'`
  1 new obsolescence markers
  obsoleted 1 changesets

third pull:

  $ hg -R ../client pull
  pulling from ssh://user@dummy/server
  searching for changes
  OBSEXC: looking for common markers in 1 nodes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 1 changes to 1 files (+1 heads)
  1 new obsolescence markers
  obsoleted 1 changesets
  new changesets c1f8d089020f (1 drafts)
  (run 'hg heads' to see heads)
  $ hg -R ../client log -G
  o  3 c1f8d089020f A2 tip
  |
  o  0 1e4be0697311 root