tests/test-evolve.t
branchmercurial-3.5
changeset 1750 1dbb8fdb725a
parent 1698 dd6f090b7342
parent 1749 c92b286ab6f1
child 1751 bc590681de77
child 1762 ad04f3c3b1a9
equal deleted inserted replaced
1707:981d895d69cf 1750:1dbb8fdb725a
    54       Unlike the previous way of handling such changes, by stripping the old
    54       Unlike the previous way of handling such changes, by stripping the old
    55       changesets from the repository, obsolescence markers can be propagated
    55       changesets from the repository, obsolescence markers can be propagated
    56       between repositories. This allows for a safe and simple way of exchanging
    56       between repositories. This allows for a safe and simple way of exchanging
    57       mutable history and altering it after the fact. Changeset phases are
    57       mutable history and altering it after the fact. Changeset phases are
    58       respected, such that only draft and secret changesets can be altered (see
    58       respected, such that only draft and secret changesets can be altered (see
    59       "hg hg phases" for details).
    59       "hg help phases" for details).
    60   
    60   
    61       Obsolescence is tracked using "obsolete markers", a piece of metadata
    61       Obsolescence is tracked using "obsolete markers", a piece of metadata
    62       tracking which changesets have been made obsolete, potential successors
    62       tracking which changesets have been made obsolete, potential successors
    63       for a given changeset, the moment the changeset was marked as obsolete,
    63       for a given changeset, the moment the changeset was marked as obsolete,
    64       and the user who performed the rewriting operation. The markers are stored
    64       and the user who performed the rewriting operation. The markers are stored
    74   
    74   
    75       Current feature status
    75       Current feature status
    76       ======================
    76       ======================
    77   
    77   
    78       This feature is still in development.  If you see this help, you have
    78       This feature is still in development.  If you see this help, you have
    79       enable an extension that turned this feature on.
    79       enabled an extension that turned this feature on.
    80   
    80   
    81       Obsolescence markers will be exchanged between repositories that
    81       Obsolescence markers will be exchanged between repositories that
    82       explicitly assert support for the obsolescence feature (this can currently
    82       explicitly assert support for the obsolescence feature (this can currently
    83       only be done via an extension).
    83       only be done via an extension).
    84 
    84 
   110   0 - 1f0dee641bb7 add a (public)
   110   0 - 1f0dee641bb7 add a (public)
   111 
   111 
   112 test kill and immutable changeset
   112 test kill and immutable changeset
   113 
   113 
   114   $ hg log -r 1 --template '{rev} {phase} {obsolete}\n'
   114   $ hg log -r 1 --template '{rev} {phase} {obsolete}\n'
   115   1 public stable
   115   1 public 
   116   $ hg prune 1
   116   $ hg prune 1
   117   abort: cannot prune immutable changeset: 7c3bad9141dc
   117   abort: cannot prune immutable changeset: 7c3bad9141dc
   118   (see "hg help phases" for details)
   118   (see "hg help phases" for details)
   119   [255]
   119   [255]
   120   $ hg log -r 1 --template '{rev} {phase} {obsolete}\n'
   120   $ hg log -r 1 --template '{rev} {phase} {obsolete}\n'
   121   1 public stable
   121   1 public 
   122 
   122 
   123 test simple kill
   123 test simple kill
   124 
   124 
   125   $ hg id -n
   125   $ hg id -n
   126   5
   126   5
   375   
   375   
   376   $ hg evolve --any --traceback --bumped
   376   $ hg evolve --any --traceback --bumped
   377   recreate:[8] another feature that rox
   377   recreate:[8] another feature that rox
   378   atop:[7] another feature (child of ba0ec09b1bab)
   378   atop:[7] another feature (child of ba0ec09b1bab)
   379   computing new diff
   379   computing new diff
   380   committed as 2d8c5414e9f0
   380   committed as 6707c5e1c49d
   381   working directory is now at 2d8c5414e9f0
   381   working directory is now at 6707c5e1c49d
   382   $ hg glog
   382   $ hg glog
   383   @  9	feature-B: bumped update to 99833d22b0c6: - test
   383   @  9	feature-B: bumped update to 99833d22b0c6: - test
   384   |
   384   |
   385   o  7	: another feature (child of ba0ec09b1bab) - test
   385   o  7	: another feature (child of ba0ec09b1bab) - test
   386   |
   386   |
   435   atop:[13] dansk!
   435   atop:[13] dansk!
   436   merging main-file-1
   436   merging main-file-1
   437   move:[11] dansk 3!
   437   move:[11] dansk 3!
   438   atop:[14] dansk 2!
   438   atop:[14] dansk 2!
   439   merging main-file-1
   439   merging main-file-1
   440   working directory is now at 536984593824
   440   working directory is now at 68557e4f0048
   441   $ hg glog
   441   $ hg glog
   442   @  15	: dansk 3! - test
   442   @  15	: dansk 3! - test
   443   |
   443   |
   444   o  14	: dansk 2! - test
   444   o  14	: dansk 2! - test
   445   |
   445   |
   597   merging 1 incomplete! (edit conflicts, then use 'hg resolve --mark')
   597   merging 1 incomplete! (edit conflicts, then use 'hg resolve --mark')
   598   abort: unresolved conflicts, can't continue
   598   abort: unresolved conflicts, can't continue
   599   (use hg resolve and hg graft --continue)
   599   (use hg resolve and hg graft --continue)
   600   [255]
   600   [255]
   601   $ hg log -r7 --template '{rev}:{node|short} {obsolete}\n'
   601   $ hg log -r7 --template '{rev}:{node|short} {obsolete}\n'
   602   7:a5bfd90a2f29 stable
   602   7:a5bfd90a2f29 
   603   $ echo 3 > 1
   603   $ echo 3 > 1
   604   $ hg resolve -m 1
   604   $ hg resolve -m 1
   605   (no more unresolved files)
   605   (no more unresolved files)
   606   $ hg graft --continue -O
   606   $ hg graft --continue -O
   607   grafting 7:a5bfd90a2f29 "conflict" (tip)
   607   grafting 7:a5bfd90a2f29 "conflict" (tip)
   808   $ cd ../work
   808   $ cd ../work
   809   $ hg fold .^ --message "Folding with custom commit message"
   809   $ hg fold .^ --message "Folding with custom commit message"
   810   2 changesets folded
   810   2 changesets folded
   811   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   811   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   812   $ glog
   812   $ glog
   813   @  16:d1297ecc971f@default(draft) Folding with custom commit message
   813   @  16:98cb758db56d@default(draft) Folding with custom commit message
   814   |
   814   |
   815   o  13:27b934eaf1f9@default(draft) dansk!
   815   o  13:0a2f9b959bb4@default(draft) dansk!
   816   |
   816   |
   817   o  7:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
   817   o  7:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
   818   |
   818   |
   819   o  6:ba0ec09b1bab@default(public) a nifty feature
   819   o  6:ba0ec09b1bab@default(public) a nifty feature
   820   |
   820   |
   827 
   827 
   828   $ hg fold .^ --logfile commit-message
   828   $ hg fold .^ --logfile commit-message
   829   2 changesets folded
   829   2 changesets folded
   830   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   830   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   831   $ hg qlog
   831   $ hg qlog
   832   17 - 0b1eca0e871b A longer
   832   17 - a00182c58888 A longer
   833                     commit message (draft)
   833                     commit message (draft)
   834   7 - 99833d22b0c6 another feature (child of ba0ec09b1bab) (public)
   834   7 - 99833d22b0c6 another feature (child of ba0ec09b1bab) (public)
   835   6 - ba0ec09b1bab a nifty feature (public)
   835   6 - ba0ec09b1bab a nifty feature (public)
   836   0 - e55e0562ee93 base (public)
   836   0 - e55e0562ee93 base (public)
   837 
   837