tests/test-phases.t
author Manuel Jacob <me@manueljacob.de>
Mon, 11 Jul 2022 01:51:20 +0200
branchstable
changeset 49378 094a5fa3cf52
parent 49315 2f326ea19fbc
child 49451 0c70d888a484
permissions -rw-r--r--
procutil: make stream detection in make_line_buffered more correct and strict In make_line_buffered(), we don’t want to wrap the stream if we know that lines get flushed to the underlying raw stream already. Previously, the heuristic was too optimistic. It assumed that any stream which is not an instance of io.BufferedIOBase doesn’t need wrapping. However, there are buffered streams that aren’t instances of io.BufferedIOBase, like Mercurial’s own winstdout. The new logic is different in two ways: First, only for the check, if unwraps any combination of WriteAllWrapper and winstdout. Second, it skips wrapping the stream only if it is an instance of io.RawIOBase (or already wrapped). If it is an instance of io.BufferedIOBase, it gets wrapped. In any other case, the function raises an exception. This ensures that, if an unknown stream is passed or we add another wrapper in the future, we don’t wrap the stream if it’s already line buffered or not wrap the stream if it’s not line buffered. In fact, this was already helpful during development of this change. Without it, I possibly would have forgot that WriteAllWrapper needs to be ignored for the check, leading to unnecessary wrapping if stdout is unbuffered. The alternative would have been to always wrap unknown streams. However, I don’t think that anyone would benefit from being less strict. We can expect streams from the standard library to be subclassing either io.RawIOBase or io.BufferedIOBase, so running Mercurial in the standard way should not regress by this change. Py2exe might replace sys.stdout and sys.stderr, but that currently breaks Mercurial anyway and also these streams don’t claim to be interactive, so this function is not called for them.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     1
  $ cat > $TESTTMP/hook.sh << 'EOF'
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     2
  > echo "test-hook-close-phase: $HG_NODE:  $HG_OLDPHASE -> $HG_PHASE"
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     3
  > EOF
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     4
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     5
  $ cat >> $HGRCPATH << EOF
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     6
  > [extensions]
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     7
  > phasereport=$TESTDIR/testlib/ext-phase-report.py
34710
cdf833d7de98 phase: add a dedicated txnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
     8
  > [hooks]
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     9
  > txnclose-phase.test = sh $TESTTMP/hook.sh
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    10
  > EOF
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    11
16013
2a1d97630f7f tests: don't use alias
Mads Kiilerich <mads@kiilerich.com>
parents: 15907
diff changeset
    12
  $ hglog() { hg log --template "{rev} {phaseidx} {desc}\n" $*; }
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    13
  $ mkcommit() {
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    14
  >    echo "$1" > "$1"
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    15
  >    hg add "$1"
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    16
  >    message="$1"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    17
  >    shift
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    18
  >    hg ci -m "$message" $*
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    19
  > }
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    20
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    21
  $ hg init initialrepo
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
  $ cd initialrepo
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    23
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    24
Cannot change null revision phase
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    25
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    26
  $ hg phase --force --secret null
16659
58edd786e96f phase: make if abort on nullid for the good reason
Patrick Mezard <patrick@mezard.eu>
parents: 16622
diff changeset
    27
  abort: cannot change null revision phase
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    28
  [255]
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    29
  $ hg phase null
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    30
  -1: public
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    31
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    32
  $ mkcommit A
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    33
  test-debug-phase: new rev 0:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    34
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    35
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    36
New commit are draft by default
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    37
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    38
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    39
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    40
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    41
Following commit are draft too
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    42
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    43
  $ mkcommit B
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    44
  test-debug-phase: new rev 1:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    45
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> draft
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    46
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    47
  $ hglog
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    48
  1 1 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    49
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    50
44004
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    51
Working directory phase is secret when its parent is secret.
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    52
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    53
  $ hg phase --force --secret .
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    54
  test-debug-phase: move rev 0: 1 -> 2
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    55
  test-debug-phase: move rev 1: 1 -> 2
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    56
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:  draft -> secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    57
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  draft -> secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    58
  $ hg log -r 'wdir()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    59
  secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    60
  $ hg log -r 'wdir() and public()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    61
  $ hg log -r 'wdir() and draft()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    62
  $ hg log -r 'wdir() and secret()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    63
  secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    64
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    65
Working directory phase is draft when its parent is draft.
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    66
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    67
  $ hg phase --draft .
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    68
  test-debug-phase: move rev 1: 2 -> 1
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    69
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  secret -> draft
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    70
  $ hg log -r 'wdir()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    71
  draft
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    72
  $ hg log -r 'wdir() and public()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    73
  $ hg log -r 'wdir() and draft()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    74
  draft
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    75
  $ hg log -r 'wdir() and secret()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    76
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    77
Working directory phase is secret when a new commit will be created as secret,
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    78
even if the parent is draft.
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    79
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    80
  $ hg log -r 'wdir() and secret()' -T '{phase}\n' \
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    81
  > --config phases.new-commit='secret'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    82
  secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    83
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    84
Working directory phase is draft when its parent is public.
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    85
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
    86
  $ hg phase --public .
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    87
  test-debug-phase: move rev 0: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    88
  test-debug-phase: move rev 1: 1 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    89
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    90
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  draft -> public
44004
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    91
  $ hg log -r 'wdir()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    92
  draft
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    93
  $ hg log -r 'wdir() and public()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    94
  $ hg log -r 'wdir() and draft()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    95
  draft
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    96
  $ hg log -r 'wdir() and secret()' -T '{phase}\n'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    97
  $ hg log -r 'wdir() and secret()' -T '{phase}\n' \
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    98
  > --config phases.new-commit='secret'
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
    99
  secret
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
   100
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
   101
Draft commit are properly created over public one:
9c1fd975e9ac phases: make the working directory consistently a draft
Rodrigo Damazio Bovendorp <rdamazio@google.com>
parents: 42893
diff changeset
   102
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   103
  $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   104
  1: public
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   105
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   106
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   107
  0 0 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   108
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   109
  $ mkcommit C
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   110
  test-debug-phase: new rev 2:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   111
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   112
  $ mkcommit D
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   113
  test-debug-phase: new rev 3:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   114
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   115
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   116
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   117
  3 1 D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   118
  2 1 C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   119
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
   120
  0 0 A
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   121
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   122
Test creating changeset as secret
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   123
16030
308406677e9d phases: allow phase name in phases.new-commit settings
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16013
diff changeset
   124
  $ mkcommit E --config phases.new-commit='secret'
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   125
  test-debug-phase: new rev 4:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   126
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:   -> secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   127
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   128
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   129
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   130
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   131
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   132
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   133
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   134
Test the secret property is inherited
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   135
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   136
  $ mkcommit H
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   137
  test-debug-phase: new rev 5:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   138
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:   -> secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   139
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   140
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   141
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   142
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   143
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   144
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   145
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   146
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   147
Even on merge
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   148
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   149
  $ hg up -q 1
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   150
  $ mkcommit "B'"
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   151
  test-debug-phase: new rev 6:  x -> 1
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   152
  created new head
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   153
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> draft
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   154
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   155
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   156
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   157
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   158
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   159
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   160
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   161
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   162
  $ hg merge 4 # E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   163
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   164
  (branch merge, don't forget to commit)
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   165
  $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   166
  6: draft
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   167
  4: secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   168
  $ hg ci -m "merge B' and E"
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   169
  test-debug-phase: new rev 7:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   170
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:   -> secret
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   171
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   172
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   173
  7 2 merge B' and E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   174
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   175
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   176
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   177
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   178
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   179
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   180
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   181
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   182
Test secret changeset are not pushed
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   183
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   184
  $ hg init ../push-dest
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   185
  $ cat > ../push-dest/.hg/hgrc << EOF
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   186
  > [phases]
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   187
  > publish=False
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   188
  > EOF
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   189
  $ hg outgoing ../push-dest --template='{rev} {phase} {desc|firstline}\n'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   190
  comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   191
  searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   192
  0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   193
  1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   194
  2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   195
  3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   196
  6 draft B'
17198
ecde35a1af9e outgoing: accept revset argument for --rev
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   197
  $ hg outgoing -r 'branch(default)' ../push-dest --template='{rev} {phase} {desc|firstline}\n'
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   198
  comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   199
  searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   200
  0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   201
  1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   202
  2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   203
  3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   204
  6 draft B'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   205
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   206
  $ hg push ../push-dest -f # force because we push multiple heads
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   207
  pushing to ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   208
  searching for changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   209
  adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   210
  adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   211
  adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   212
  added 5 changesets with 5 changes to 5 files (+1 heads)
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   213
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   214
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   215
  test-debug-phase: new rev 2:  x -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   216
  test-debug-phase: new rev 3:  x -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   217
  test-debug-phase: new rev 4:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   218
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   219
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   220
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   221
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   222
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> draft
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   223
  $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   224
  7 2 merge B' and E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   225
  6 1 B'
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   226
  5 2 H
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   227
  4 2 E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   228
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   229
  2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   230
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   231
  0 0 A
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   232
  $ cd ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   233
  $ hglog
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   234
  4 1 B'
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   235
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   236
  2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   237
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   238
  0 0 A
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   239
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   240
(Issue3303)
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   241
Check that remote secret changeset are ignore when checking creation of remote heads
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   242
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   243
We add a secret head into the push destination. This secret head shadows a
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   244
visible shared between the initial repo and the push destination.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   245
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   246
  $ hg up -q 4 # B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   247
  $ mkcommit Z --config phases.new-commit=secret
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   248
  test-debug-phase: new rev 5:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   249
  test-hook-close-phase: 2713879da13d6eea1ff22b442a5a87cb31a7ce6a:   -> secret
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   250
  $ hg phase .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   251
  5: secret
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   252
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   253
We now try to push a new public changeset that descend from the common public
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   254
head shadowed by the remote secret head.
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   255
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   256
  $ cd ../initialrepo
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   257
  $ hg up -q 6 #B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   258
  $ mkcommit I
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   259
  test-debug-phase: new rev 8:  x -> 1
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   260
  created new head
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   261
  test-hook-close-phase: 6d6770faffce199f1fddd1cf87f6f026138cf061:   -> draft
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   262
  $ hg push ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   263
  pushing to ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   264
  searching for changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   265
  adding changesets
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   266
  adding manifests
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   267
  adding file changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   268
  added 1 changesets with 1 changes to 1 files (+1 heads)
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   269
  test-debug-phase: new rev 6:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   270
  test-hook-close-phase: 6d6770faffce199f1fddd1cf87f6f026138cf061:   -> draft
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   271
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   272
:note: The "(+1 heads)" is wrong as we do not had any visible head
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   273
18462
593eb3786165 documentation: update to new filter names
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18394
diff changeset
   274
check that branch cache with "served" filter are properly computed and stored
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   275
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   276
  $ ls ../push-dest/.hg/cache/branch2*
32268
24f55686a63d caches: stop warming the cache after changegroup application
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31767
diff changeset
   277
  ../push-dest/.hg/cache/branch2-base
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   278
  ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   279
  $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   280
  6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   281
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   282
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   283
  $ hg heads -R ../push-dest --template '{rev}:{node} {phase}\n'  #update visible cache too
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   284
  6:6d6770faffce199f1fddd1cf87f6f026138cf061 draft
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   285
  5:2713879da13d6eea1ff22b442a5a87cb31a7ce6a secret
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   286
  3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e draft
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   287
  $ ls ../push-dest/.hg/cache/branch2*
32268
24f55686a63d caches: stop warming the cache after changegroup application
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31767
diff changeset
   288
  ../push-dest/.hg/cache/branch2-base
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   289
  ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   290
  ../push-dest/.hg/cache/branch2-visible
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   291
  $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   292
  6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   293
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   294
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   295
  $ cat ../push-dest/.hg/cache/branch2-visible
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   296
  6d6770faffce199f1fddd1cf87f6f026138cf061 6
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   297
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   298
  2713879da13d6eea1ff22b442a5a87cb31a7ce6a o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   299
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   300
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   301
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   302
Restore condition prior extra insertion.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   303
  $ hg -q --config extensions.mq= strip .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   304
  $ hg up -q 7
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   305
  $ cd ..
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   306
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   307
Test secret changeset are not pull
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   308
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   309
  $ hg init pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   310
  $ cd pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   311
  $ hg pull ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   312
  pulling from ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   313
  requesting all changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   314
  adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   315
  adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   316
  adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   317
  added 5 changesets with 5 changes to 5 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33773
diff changeset
   318
  new changesets 4a2df7238c3b:cf9fe039dfd6
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   319
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   320
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   321
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   322
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   323
  test-debug-phase: new rev 4:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   324
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   325
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   326
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   327
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   328
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   329
  (run 'hg heads' to see heads, 'hg merge' to merge)
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   330
  $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   331
  4 0 B'
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   332
  3 0 D
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   333
  2 0 C
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   334
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   335
  0 0 A
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   336
  $ cd ..
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   337
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   338
But secret can still be bundled explicitly
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   339
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   340
  $ cd initialrepo
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   341
  $ hg bundle --base '4^' -r 'children(4)' ../secret-bundle.hg
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   342
  4 changesets found
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   343
  $ cd ..
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   344
15888
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   345
Test secret changeset are not cloned
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   346
(during local clone)
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   347
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   348
  $ hg clone -qU initialrepo clone-dest
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   349
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   350
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   351
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   352
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   353
  test-debug-phase: new rev 4:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   354
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   355
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   356
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   357
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   358
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
15888
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   359
  $ hglog -R clone-dest
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   360
  4 0 B'
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   361
  3 0 D
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   362
  2 0 C
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   363
  1 0 B
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   364
  0 0 A
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   365
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   366
Test summary
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   367
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   368
  $ hg summary -R clone-dest --verbose
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   369
  parent: -1:000000000000  (no revision checked out)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   370
  branch: default
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   371
  commit: (clean)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   372
  update: 5 new changesets (update)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   373
  $ hg summary -R initialrepo
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   374
  parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   375
   merge B' and E
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   376
  branch: default
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
   377
  commit: (clean) (secret)
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   378
  update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
   379
  phases: 3 draft, 3 secret
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   380
  $ hg summary -R initialrepo --quiet
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   381
  parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   382
  update: 1 new changesets, 2 branch heads (merge)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   383
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   384
Test revset
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   385
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   386
  $ cd initialrepo
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   387
  $ hglog -r 'public()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   388
  0 0 A
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   389
  1 0 B
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   390
  $ hglog -r 'draft()'
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   391
  2 1 C
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   392
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   393
  6 1 B'
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   394
  $ hglog -r 'secret()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   395
  4 2 E
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   396
  5 2 H
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   397
  7 2 merge B' and E
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   398
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   399
test that phase are displayed in log at debug level
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   400
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   401
  $ hg log --debug
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   402
  changeset:   7:17a481b3bccb796c0521ae97903d81c52bfee4af
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   403
  tag:         tip
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   404
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   405
  parent:      6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   406
  parent:      4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   407
  manifest:    7:5e724ffacba267b2ab726c91fc8b650710deaaa8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   408
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   409
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   410
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   411
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   412
  merge B' and E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   413
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   414
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   415
  changeset:   6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   416
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   417
  parent:      1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   418
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   419
  manifest:    6:ab8bfef2392903058bf4ebb9e7746e8d7026b27a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   420
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   421
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   422
  files+:      B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   423
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   424
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   425
  B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   426
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   427
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   428
  changeset:   5:a030c6be5127abc010fcbff1851536552e6951a8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   429
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   430
  parent:      4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   431
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   432
  manifest:    5:5c710aa854874fe3d5fa7192e77bdb314cc08b5a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   433
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   434
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   435
  files+:      H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   436
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   437
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   438
  H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   439
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   440
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   441
  changeset:   4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   442
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   443
  parent:      3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   444
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   445
  manifest:    4:7173fd1c27119750b959e3a0f47ed78abe75d6dc
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   446
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   447
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   448
  files+:      E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   449
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   450
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   451
  E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   452
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   453
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   454
  changeset:   3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   455
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   456
  parent:      2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   457
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   458
  manifest:    3:6e1f4c47ecb533ffd0c8e52cdc88afb6cd39e20c
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   459
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   460
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   461
  files+:      D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   462
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   463
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   464
  D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   465
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   466
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   467
  changeset:   2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   468
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   469
  parent:      1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   470
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   471
  manifest:    2:66a5a01817fdf5239c273802b5b7618d051c89e4
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   472
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   473
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   474
  files+:      C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   475
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   476
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   477
  C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   478
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   479
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   480
  changeset:   1:27547f69f25460a52fff66ad004e58da7ad3fb56
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
   481
  phase:       public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   482
  parent:      0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   483
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   484
  manifest:    1:cb5cbbc1bfbf24cc34b9e8c16914e9caa2d2a7fd
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   485
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   486
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   487
  files+:      B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   488
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   489
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   490
  B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   491
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   492
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   493
  changeset:   0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
   494
  phase:       public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   495
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   496
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   497
  manifest:    0:007d8c9d88841325f5c6b06371b35b4e8a2b1a83
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   498
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   499
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   500
  files+:      A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   501
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   502
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   503
  A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   504
  
17985
f94ead934067 tests: fix broken fix of test-phases output
Matt Mackall <mpm@selenic.com>
parents: 17979
diff changeset
   505
  
17979
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   506
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   507
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   508
(Issue3707)
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   509
test invalid phase name
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   510
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   511
  $ mkcommit I --config phases.new-commit='babar'
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   512
  transaction abort!
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   513
  rollback completed
45894
9dc1351d0b5f errors: raise ConfigError on failure to parse config file
Martin von Zweigbergk <martinvonz@google.com>
parents: 45841
diff changeset
   514
  config error: phases.new-commit: not a valid phase name ('babar')
45841
bff719525815 errors: set detailed exit code to 30 for config errors
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   515
  [30]
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   516
Test phase command
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   517
===================
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   518
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   519
initial picture
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   520
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   521
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   522
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   523
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   524
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   525
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   526
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   527
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   528
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   529
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   530
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   531
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   532
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   533
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   534
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   535
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   536
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   537
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   538
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   539
display changesets phase
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   540
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   541
(mixing -r and plain rev specification)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   542
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   543
  $ hg phase 1::4 -r 7
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   544
  1: public
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   545
  2: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   546
  3: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   547
  4: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   548
  7: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   549
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   550
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   551
move changeset forward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   552
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   553
(with -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   554
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   555
  $ hg phase --public -r 2
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   556
  test-debug-phase: move rev 2: 1 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   557
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  draft -> public
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   558
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   559
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   560
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   561
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   562
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   563
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   564
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   565
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   566
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   567
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   568
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   569
  o |  2 public C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   570
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   571
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   572
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   573
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   574
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   575
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   576
move changeset backward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   577
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   578
(without -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   579
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   580
  $ hg phase --draft --force 2
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   581
  test-debug-phase: move rev 2: 0 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   582
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  public -> draft
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   583
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   584
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   585
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   586
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   587
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   588
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   589
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   590
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   591
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   592
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   593
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   594
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   595
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   596
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   597
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   598
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   599
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   600
31152
b7cef987356d phases: remove experimental.nativephaseskillswitch
Jun Wu <quark@fb.com>
parents: 31053
diff changeset
   601
move changeset forward and backward
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   602
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   603
  $ hg phase --draft --force 1::4
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   604
  test-debug-phase: move rev 1: 0 -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   605
  test-debug-phase: move rev 4: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   606
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  public -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   607
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  secret -> draft
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   608
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   609
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   610
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   611
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   612
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   613
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   614
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   615
  o |  4 draft E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   616
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   617
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   618
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   619
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   620
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   621
  o  1 draft B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   622
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   623
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   624
  
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   625
test partial failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   626
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   627
  $ hg phase --public 7
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   628
  test-debug-phase: move rev 1: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   629
  test-debug-phase: move rev 2: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   630
  test-debug-phase: move rev 3: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   631
  test-debug-phase: move rev 4: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   632
  test-debug-phase: move rev 6: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   633
  test-debug-phase: move rev 7: 2 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   634
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   635
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   636
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   637
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   638
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   639
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  secret -> public
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   640
  $ hg phase --draft '5 or 7'
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   641
  test-debug-phase: move rev 5: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   642
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:  secret -> draft
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
   643
  cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   644
  phase changed for 1 changesets
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   645
  [1]
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   646
  $ hg log -G --template "{rev} {phase} {desc}\n"
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   647
  @    7 public merge B' and E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   648
  |\
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   649
  | o  6 public B'
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   650
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   651
  +---o  5 draft H
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   652
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   653
  o |  4 public E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   654
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   655
  o |  3 public D
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   656
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   657
  o |  2 public C
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   658
  |/
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   659
  o  1 public B
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   660
  |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   661
  o  0 public A
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   662
  
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   663
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   664
test complete failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   665
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   666
  $ hg phase --draft 7
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
   667
  cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   668
  no phases changed
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   669
  [1]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
   670
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
   671
  $ cd ..
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   672
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   673
test hidden changeset are not cloned as public (issue3935)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   674
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   675
  $ cd initialrepo
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   676
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   677
(enabling evolution)
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
   678
  $ cat >> $HGRCPATH << EOF
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
   679
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34711
diff changeset
   680
  > evolution.createmarkers=True
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   681
  > EOF
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   682
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   683
(making a changeset hidden; H in that case)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   684
  $ hg debugobsolete `hg id --debug -r 5`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40919
diff changeset
   685
  1 new obsolescence markers
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33459
diff changeset
   686
  obsoleted 1 changesets
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   687
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   688
  $ cd ..
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   689
  $ hg clone initialrepo clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   690
  requesting all changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   691
  adding changesets
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   692
  adding manifests
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   693
  adding file changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   694
  added 7 changesets with 6 changes to 6 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33773
diff changeset
   695
  new changesets 4a2df7238c3b:17a481b3bccb
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   696
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   697
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   698
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   699
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   700
  test-debug-phase: new rev 4:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   701
  test-debug-phase: new rev 5:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   702
  test-debug-phase: new rev 6:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   703
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   704
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   705
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   706
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   707
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   708
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   709
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:   -> public
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   710
  updating to branch default
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   711
  6 files updated, 0 files merged, 0 files removed, 0 files unresolved
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   712
  $ cd clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   713
  $ hg log -G --template "{rev} {phase} {desc}\n"
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   714
  @    6 public merge B' and E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   715
  |\
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   716
  | o  5 public B'
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   717
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   718
  o |  4 public E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   719
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   720
  o |  3 public D
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   721
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   722
  o |  2 public C
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   723
  |/
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   724
  o  1 public B
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   725
  |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   726
  o  0 public A
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   727
  
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   728
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   729
test verify repo containing hidden changesets, which should not abort just
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   730
because repo.cancopy() is False
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   731
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   732
  $ cd ../initialrepo
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   733
  $ hg verify
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   734
  checking changesets
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   735
  checking manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   736
  crosschecking files in changesets and manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   737
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 39299
diff changeset
   738
  checked 8 changesets with 7 changes to 7 files
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   739
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   740
  $ cd ..
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   741
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   742
check whether HG_PENDING makes pending changes only in related
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   743
repositories visible to an external hook.
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   744
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   745
(emulate a transaction running concurrently by copied
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   746
.hg/phaseroots.pending in subsequent test)
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   747
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   748
  $ cat > $TESTTMP/savepending.sh <<EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   749
  > cp .hg/store/phaseroots.pending  .hg/store/phaseroots.pending.saved
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   750
  > exit 1 # to avoid changing phase for subsequent tests
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   751
  > EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   752
  $ cd push-dest
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   753
  $ hg phase 6
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   754
  6: draft
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   755
  $ hg --config hooks.pretxnclose="sh $TESTTMP/savepending.sh" phase -f -s 6
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   756
  transaction abort!
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   757
  rollback completed
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   758
  abort: pretxnclose hook exited with status 1
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 45894
diff changeset
   759
  [40]
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   760
  $ cp .hg/store/phaseroots.pending.saved .hg/store/phaseroots.pending
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   761
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   762
(check (in)visibility of phaseroot while transaction running in repo)
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   763
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   764
  $ cat > $TESTTMP/checkpending.sh <<EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   765
  > echo '@initialrepo'
31767
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31152
diff changeset
   766
  > hg -R "$TESTTMP/initialrepo" phase 7
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   767
  > echo '@push-dest'
31767
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31152
diff changeset
   768
  > hg -R "$TESTTMP/push-dest" phase 6
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   769
  > exit 1 # to avoid changing phase for subsequent tests
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   770
  > EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   771
  $ cd ../initialrepo
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   772
  $ hg phase 7
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   773
  7: public
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   774
  $ hg --config hooks.pretxnclose="sh $TESTTMP/checkpending.sh" phase -f -s 7
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   775
  @initialrepo
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   776
  7: secret
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   777
  @push-dest
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   778
  6: draft
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   779
  transaction abort!
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   780
  rollback completed
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   781
  abort: pretxnclose hook exited with status 1
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 45894
diff changeset
   782
  [40]
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   783
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   784
Check that pretxnclose-phase hook can control phase movement
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   785
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   786
  $ hg phase --force b3325c91a4d9 --secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   787
  test-debug-phase: move rev 3: 0 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   788
  test-debug-phase: move rev 4: 0 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   789
  test-debug-phase: move rev 5: 1 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   790
  test-debug-phase: move rev 7: 0 -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   791
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  public -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   792
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  public -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   793
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:  draft -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   794
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  public -> secret
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   795
  $ hg log -G -T phases
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   796
  @    changeset:   7:17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   797
  |\   tag:         tip
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   798
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   799
  | |  parent:      6:cf9fe039dfd6
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   800
  | |  parent:      4:a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   801
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   802
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   803
  | |  summary:     merge B' and E
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   804
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   805
  | o  changeset:   6:cf9fe039dfd6
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   806
  | |  phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   807
  | |  parent:      1:27547f69f254
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   808
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   809
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   810
  | |  summary:     B'
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   811
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   812
  o |  changeset:   4:a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   813
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   814
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   815
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   816
  | |  summary:     E
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   817
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   818
  o |  changeset:   3:b3325c91a4d9
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   819
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   820
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   821
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   822
  | |  summary:     D
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   823
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   824
  o |  changeset:   2:f838bfaca5c7
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   825
  |/   phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   826
  |    user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   827
  |    date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   828
  |    summary:     C
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   829
  |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   830
  o  changeset:   1:27547f69f254
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   831
  |  phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   832
  |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   833
  |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   834
  |  summary:     B
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   835
  |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   836
  o  changeset:   0:4a2df7238c3b
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   837
     phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   838
     user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   839
     date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   840
     summary:     A
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   841
  
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   842
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   843
Install a hook that prevent b3325c91a4d9 to become public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   844
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   845
  $ cat >> .hg/hgrc << EOF
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   846
  > [hooks]
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
   847
  > pretxnclose-phase.nopublish_D = sh -c "(echo \$HG_NODE| grep -v b3325c91a4d9>/dev/null) || [ 'public' != \$HG_PHASE ]"
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   848
  > EOF
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   849
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   850
Try various actions. only the draft move should succeed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   851
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   852
  $ hg phase --public b3325c91a4d9
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   853
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   854
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   855
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 45894
diff changeset
   856
  [40]
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   857
  $ hg phase --public a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   858
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   859
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   860
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 45894
diff changeset
   861
  [40]
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   862
  $ hg phase --draft 17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   863
  test-debug-phase: move rev 3: 2 -> 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   864
  test-debug-phase: move rev 4: 2 -> 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   865
  test-debug-phase: move rev 7: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   866
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  secret -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   867
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  secret -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   868
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  secret -> draft
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   869
  $ hg phase --public 17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   870
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   871
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   872
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 45894
diff changeset
   873
  [40]
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   874
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   875
  $ cd ..
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   876
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   877
Test for the "internal" phase
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   878
=============================
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   879
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   880
Check we deny its usage on older repository
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   881
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   882
  $ hg init no-internal-phase --config format.internal-phase=no
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   883
  $ cd no-internal-phase
48463
880adb2cd147 test: simplify `debugformat` matching in test-phases.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48321
diff changeset
   884
  $ hg debugrequires | grep internal-phase
880adb2cd147 test: simplify `debugformat` matching in test-phases.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48321
diff changeset
   885
  [1]
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   886
  $ echo X > X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   887
  $ hg add X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   888
  $ hg status
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   889
  A X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   890
  $ hg --config "phases.new-commit=internal" commit -m "my test internal commit" 2>&1 | grep ProgrammingError
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   891
  ** ProgrammingError: this repository does not support the internal phase
47841
f1af5a084862 pyoxidized: adapt output of `test-phases.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47279
diff changeset
   892
      raise error.ProgrammingError(msg) (no-pyoxidizer !)
45212
41021660baa1 tests: glob 'mercurial.error' in test-phases.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 44618
diff changeset
   893
  *ProgrammingError: this repository does not support the internal phase (glob)
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   894
  $ hg --config "phases.new-commit=archived" commit -m "my test archived commit" 2>&1 | grep ProgrammingError
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   895
  ** ProgrammingError: this repository does not support the archived phase
47841
f1af5a084862 pyoxidized: adapt output of `test-phases.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47279
diff changeset
   896
      raise error.ProgrammingError(msg) (no-pyoxidizer !)
45212
41021660baa1 tests: glob 'mercurial.error' in test-phases.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 44618
diff changeset
   897
  *ProgrammingError: this repository does not support the archived phase (glob)
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   898
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   899
  $ cd ..
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   900
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   901
Check it works fine with repository that supports it.
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   902
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   903
  $ hg init internal-phase --config format.internal-phase=yes
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   904
  $ cd internal-phase
48463
880adb2cd147 test: simplify `debugformat` matching in test-phases.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48321
diff changeset
   905
  $ hg debugrequires | grep internal-phase
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   906
  internal-phase
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   907
  $ mkcommit A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   908
  test-debug-phase: new rev 0:  x -> 1
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   909
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> draft
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   910
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   911
Commit an internal changesets
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   912
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   913
  $ echo B > B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   914
  $ hg add B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   915
  $ hg status
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   916
  A B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   917
  $ hg --config "phases.new-commit=internal" commit -m "my test internal commit"
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   918
  test-debug-phase: new rev 1:  x -> 96
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   919
  test-hook-close-phase: c01c42dffc7f81223397e99652a0703f83e1c5ea:   -> internal
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   920
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   921
The changeset is a working parent descendant.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   922
Per the usual visibility rules, it is made visible.
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   923
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   924
  $ hg log -G -l 3
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   925
  @  changeset:   1:c01c42dffc7f
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   926
  |  tag:         tip
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   927
  |  user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   928
  |  date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   929
  |  summary:     my test internal commit
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   930
  |
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   931
  o  changeset:   0:4a2df7238c3b
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   932
     user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   933
     date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   934
     summary:     A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   935
  
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   936
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   937
Commit is hidden as expected
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   938
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   939
  $ hg up 0
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   940
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   941
  $ hg log -G
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   942
  @  changeset:   0:4a2df7238c3b
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   943
     tag:         tip
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   944
     user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   945
     date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   946
     summary:     A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   947
  
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   948
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   949
Test for archived phase
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   950
-----------------------
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   951
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   952
Commit an archived changesets
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   953
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   954
  $ echo B > B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   955
  $ hg add B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   956
  $ hg status
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   957
  A B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   958
  $ hg --config "phases.new-commit=archived" commit -m "my test archived commit"
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   959
  test-debug-phase: new rev 2:  x -> 32
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   960
  test-hook-close-phase: 8df5997c3361518f733d1ae67cd3adb9b0eaf125:   -> archived
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   961
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   962
The changeset is a working parent descendant.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   963
Per the usual visibility rules, it is made visible.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   964
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   965
  $ hg log -G -l 3
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   966
  @  changeset:   2:8df5997c3361
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   967
  |  tag:         tip
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   968
  |  parent:      0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   969
  |  user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   970
  |  date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   971
  |  summary:     my test archived commit
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   972
  |
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   973
  o  changeset:   0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   974
     user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   975
     date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   976
     summary:     A
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   977
  
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   978
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   979
Commit is hidden as expected
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   980
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   981
  $ hg up 0
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   982
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   983
  $ hg log -G
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   984
  @  changeset:   0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   985
     tag:         tip
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   986
     user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   987
     date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   988
     summary:     A
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   989
  
45757
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   990
  $ cd ..
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   991
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   992
Recommitting an exact match of a public commit shouldn't change it to
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   993
draft:
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   994
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   995
  $ cd initialrepo
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   996
  $ hg phase -r 2
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   997
  2: public
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   998
  $ hg up -C 1
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
   999
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1000
  $ mkcommit C
45812
976b26bdd0d8 commit: warn the user when a commit already exists
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45757
diff changeset
  1001
  warning: commit already existed in the repository!
45757
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1002
  $ hg phase -r 2
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1003
  2: public
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1004
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1005
Same, but for secret:
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1006
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1007
  $ hg up 7
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1008
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1009
  $ mkcommit F -s
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1010
  test-debug-phase: new rev 8:  x -> 2
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1011
  test-hook-close-phase: de414268ec5ce2330c590b942fbb5ff0b0ca1a0a:   -> secret
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1012
  $ hg up 7
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1013
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1014
  $ hg phase
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1015
  7: draft
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1016
  $ mkcommit F
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1017
  test-debug-phase: new rev 8:  x -> 2
45812
976b26bdd0d8 commit: warn the user when a commit already exists
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45757
diff changeset
  1018
  warning: commit already existed in the repository!
45757
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1019
  test-hook-close-phase: de414268ec5ce2330c590b942fbb5ff0b0ca1a0a:   -> secret
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1020
  $ hg phase -r tip
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1021
  8: secret
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1022
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1023
But what about obsoleted changesets?
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1024
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1025
  $ hg up 4
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1026
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1027
  $ mkcommit H
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1028
  test-debug-phase: new rev 5:  x -> 2
45812
976b26bdd0d8 commit: warn the user when a commit already exists
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45757
diff changeset
  1029
  warning: commit already existed in the repository!
45757
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1030
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:   -> secret
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1031
  $ hg phase -r 5
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1032
  5: secret
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1033
  $ hg par
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1034
  changeset:   5:a030c6be5127
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1035
  user:        test
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1036
  date:        Thu Jan 01 00:00:00 1970 +0000
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1037
  obsolete:    pruned
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1038
  summary:     H
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1039
  
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1040
  $ hg up tip
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1041
  2 files updated, 0 files merged, 1 files removed, 0 files unresolved
067707e026b4 commit: don't change phases for preexisting commits
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45212
diff changeset
  1042
  $ cd ..