view tests/test-rebase-parameters.out @ 10189:e451e599fbcf

patch: support diff data loss detection and upgrade In worst case, generating diff in upgrade mode can be two times more expensive than generating it in git mode directly: we may have to regenerate the whole diff again whenever a git feature is detected. Also, the first diff attempt is completely buffered instead of being streamed. That said, even without having profiled it yet, I am convinced we can fast-path the upgrade mode if necessary were it to be used in regular diff commands, and not only in mq where avoiding data loss is worth the price.
author Patrick Mezard <pmezard@gmail.com>
date Fri, 01 Jan 2010 20:54:05 +0100
parents f3404b7f37ca
children 66d954e76ffb
line wrap: on
line source

% These fail

% Use continue and abort
hg rebase: cannot use both abort and continue
hg rebase [-s REV | -b REV] [-d REV] [--collapse] [--keep] [--keepbranches] | [-c] | [-a]

move changeset (and descendants) to a different branch

    Rebase uses repeated merging to graft changesets from one part of history
    onto another. This can be useful for linearizing local changes relative to
    a master development tree.

    If a rebase is interrupted to manually resolve a merge, it can be
    continued with --continue/-c or aborted with --abort/-a.

options:

 -s --source        rebase from a given revision
 -b --base          rebase from the base of a given revision
 -d --dest          rebase onto a given revision
    --collapse      collapse the rebased changesets
    --keep          keep original changesets
    --keepbranches  keep original branch names
 -c --continue      continue an interrupted rebase
 -a --abort         abort an interrupted rebase
    --style         display using template map file
    --template      display with template

use "hg -v help rebase" to show global options

% Use continue and collapse
hg rebase: cannot use collapse with continue or abort
hg rebase [-s REV | -b REV] [-d REV] [--collapse] [--keep] [--keepbranches] | [-c] | [-a]

move changeset (and descendants) to a different branch

    Rebase uses repeated merging to graft changesets from one part of history
    onto another. This can be useful for linearizing local changes relative to
    a master development tree.

    If a rebase is interrupted to manually resolve a merge, it can be
    continued with --continue/-c or aborted with --abort/-a.

options:

 -s --source        rebase from a given revision
 -b --base          rebase from the base of a given revision
 -d --dest          rebase onto a given revision
    --collapse      collapse the rebased changesets
    --keep          keep original changesets
    --keepbranches  keep original branch names
 -c --continue      continue an interrupted rebase
 -a --abort         abort an interrupted rebase
    --style         display using template map file
    --template      display with template

use "hg -v help rebase" to show global options

% Use continue/abort and dest/source
hg rebase: abort and continue do not allow specifying revisions
hg rebase [-s REV | -b REV] [-d REV] [--collapse] [--keep] [--keepbranches] | [-c] | [-a]

move changeset (and descendants) to a different branch

    Rebase uses repeated merging to graft changesets from one part of history
    onto another. This can be useful for linearizing local changes relative to
    a master development tree.

    If a rebase is interrupted to manually resolve a merge, it can be
    continued with --continue/-c or aborted with --abort/-a.

options:

 -s --source        rebase from a given revision
 -b --base          rebase from the base of a given revision
 -d --dest          rebase onto a given revision
    --collapse      collapse the rebased changesets
    --keep          keep original changesets
    --keepbranches  keep original branch names
 -c --continue      continue an interrupted rebase
 -a --abort         abort an interrupted rebase
    --style         display using template map file
    --template      display with template

use "hg -v help rebase" to show global options

% Use source and base
hg rebase: cannot specify both a revision and a base
hg rebase [-s REV | -b REV] [-d REV] [--collapse] [--keep] [--keepbranches] | [-c] | [-a]

move changeset (and descendants) to a different branch

    Rebase uses repeated merging to graft changesets from one part of history
    onto another. This can be useful for linearizing local changes relative to
    a master development tree.

    If a rebase is interrupted to manually resolve a merge, it can be
    continued with --continue/-c or aborted with --abort/-a.

options:

 -s --source        rebase from a given revision
 -b --base          rebase from the base of a given revision
 -d --dest          rebase onto a given revision
    --collapse      collapse the rebased changesets
    --keep          keep original changesets
    --keepbranches  keep original branch names
 -c --continue      continue an interrupted rebase
 -a --abort         abort an interrupted rebase
    --style         display using template map file
    --template      display with template

use "hg -v help rebase" to show global options

% Rebase with no arguments - from current
nothing to rebase

% Rebase with no arguments - from the current branch
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
nothing to rebase
% ----------
% These work

% Rebase with no arguments (from 3 onto 7)
3 files updated, 0 files merged, 2 files removed, 0 files unresolved
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files
rebase completed
% Try to rollback after a rebase (fail)
no rollback information available

% Rebase with base == '.' => same as no arguments (from 3 onto 7)
3 files updated, 0 files merged, 3 files removed, 0 files unresolved
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files
rebase completed

% Rebase with dest == default => same as no arguments (from 3 onto 7)
3 files updated, 0 files merged, 3 files removed, 0 files unresolved
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files
rebase completed

% Specify only source (from 4 onto 7)
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 4 changesets with 4 changes to 4 files (-1 heads)
rebase completed

% Specify only dest (from 3 onto 6)
3 files updated, 0 files merged, 3 files removed, 0 files unresolved
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files (+1 heads)
rebase completed

% Specify only base (from 3 onto 7)
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files
rebase completed

% Specify source and dest (from 4 onto 6)
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 4 changesets with 4 changes to 4 files
rebase completed

% Specify base and dest (from 3 onto 6)
saving bundle to 
adding branch
adding changesets
adding manifests
adding file changes
added 5 changesets with 5 changes to 5 files (+1 heads)
rebase completed