tests/test-convert-hg-startrev.t
changeset 19456 2345c9eb73c7
parent 16165 60101427d618
child 19457 948df0f10ec1
equal deleted inserted replaced
19455:c229a5e7511e 19456:2345c9eb73c7
    15   $ hg init source
    15   $ hg init source
    16   $ cd source
    16   $ cd source
    17 
    17 
    18   $ echo a > a
    18   $ echo a > a
    19   $ echo b > b
    19   $ echo b > b
    20   $ hg ci -d '0 0' -qAm '0: add a b'
    20   $ echo f > f
       
    21   $ hg ci -d '0 0' -qAm '0: add a b f'
    21   $ echo c > c
    22   $ echo c > c
    22   $ hg ci -d '1 0' -qAm '1: add c'
    23   $ hg move f d
       
    24   $ hg ci -d '1 0' -qAm '1: add c, move f to d'
    23   $ hg copy a e
    25   $ hg copy a e
    24   $ echo b >> b
    26   $ echo b >> b
    25   $ hg ci -d '2 0' -qAm '2: copy e from a, change b'
    27   $ hg ci -d '2 0' -qAm '2: copy e from a, change b'
    26   $ hg up -C 0
    28   $ hg up -C 0
    27   1 files updated, 0 files merged, 2 files removed, 0 files unresolved
    29   2 files updated, 0 files merged, 3 files removed, 0 files unresolved
    28   $ echo a >> a
    30   $ echo a >> a
    29   $ hg ci -d '3 0' -qAm '3: change a'
    31   $ hg ci -d '3 0' -qAm '3: change a'
    30   $ hg merge
    32   $ hg merge
    31   merging a and e to e
    33   merging a and e to e
    32   2 files updated, 1 files merged, 0 files removed, 0 files unresolved
    34   3 files updated, 1 files merged, 1 files removed, 0 files unresolved
    33   (branch merge, don't forget to commit)
    35   (branch merge, don't forget to commit)
    34   $ hg copy b d
    36   $ hg ci -d '4 0' -qAm '4: merge 2 and 3'
    35   $ hg ci -d '4 0' -qAm '4: merge 2 and 3, copy d from b'
       
    36   $ echo a >> a
    37   $ echo a >> a
    37   $ hg ci -d '5 0' -qAm '5: change a'
    38   $ hg ci -d '5 0' -qAm '5: change a'
    38   $ cd ..
    39   $ cd ..
    39 
    40 
    40 Convert from null revision
    41 Convert from null revision
    42   $ hg convert --config convert.hg.startrev=null source full
    43   $ hg convert --config convert.hg.startrev=null source full
    43   initializing destination full repository
    44   initializing destination full repository
    44   scanning source...
    45   scanning source...
    45   sorting...
    46   sorting...
    46   converting...
    47   converting...
    47   5 0: add a b
    48   5 0: add a b f
    48   4 1: add c
    49   4 1: add c, move f to d
    49   3 2: copy e from a, change b
    50   3 2: copy e from a, change b
    50   2 3: change a
    51   2 3: change a
    51   1 4: merge 2 and 3, copy d from b
    52   1 4: merge 2 and 3
    52   0 5: change a
    53   0 5: change a
    53 
    54 
    54   $ glog full
    55   $ glog full
    55   o  5 "5: change a" files: a
    56   o  5 "5: change a" files: a
    56   |
    57   |
    57   o    4 "4: merge 2 and 3, copy d from b" files: d e
    58   o    4 "4: merge 2 and 3" files: e f
    58   |\
    59   |\
    59   | o  3 "3: change a" files: a
    60   | o  3 "3: change a" files: a
    60   | |
    61   | |
    61   o |  2 "2: copy e from a, change b" files: b e
    62   o |  2 "2: copy e from a, change b" files: b e
    62   | |
    63   | |
    63   o |  1 "1: add c" files: c
    64   o |  1 "1: add c, move f to d" files: c d f
    64   |/
    65   |/
    65   o  0 "0: add a b" files: a b
    66   o  0 "0: add a b f" files: a b f
    66   
    67   
    67   $ rm -Rf full
    68   $ rm -Rf full
    68 
    69 
    69 Convert from zero revision
    70 Convert from zero revision
    70 
    71 
    71   $ hg convert --config convert.hg.startrev=0 source full
    72   $ hg convert --config convert.hg.startrev=0 source full
    72   initializing destination full repository
    73   initializing destination full repository
    73   scanning source...
    74   scanning source...
    74   sorting...
    75   sorting...
    75   converting...
    76   converting...
    76   5 0: add a b
    77   5 0: add a b f
    77   4 1: add c
    78   4 1: add c, move f to d
    78   3 2: copy e from a, change b
    79   3 2: copy e from a, change b
    79   2 3: change a
    80   2 3: change a
    80   1 4: merge 2 and 3, copy d from b
    81   1 4: merge 2 and 3
    81   0 5: change a
    82   0 5: change a
    82 
    83 
    83   $ glog full
    84   $ glog full
    84   o  5 "5: change a" files: a
    85   o  5 "5: change a" files: a
    85   |
    86   |
    86   o    4 "4: merge 2 and 3, copy d from b" files: d e
    87   o    4 "4: merge 2 and 3" files: e f
    87   |\
    88   |\
    88   | o  3 "3: change a" files: a
    89   | o  3 "3: change a" files: a
    89   | |
    90   | |
    90   o |  2 "2: copy e from a, change b" files: b e
    91   o |  2 "2: copy e from a, change b" files: b e
    91   | |
    92   | |
    92   o |  1 "1: add c" files: c
    93   o |  1 "1: add c, move f to d" files: c d f
    93   |/
    94   |/
    94   o  0 "0: add a b" files: a b
    95   o  0 "0: add a b f" files: a b f
    95   
    96   
    96 Convert from merge parent
    97 Convert from merge parent
    97 
    98 
    98   $ hg convert --config convert.hg.startrev=1 source conv1
    99   $ hg convert --config convert.hg.startrev=1 source conv1
    99   initializing destination conv1 repository
   100   initializing destination conv1 repository
   100   scanning source...
   101   scanning source...
   101   sorting...
   102   sorting...
   102   converting...
   103   converting...
   103   3 1: add c
   104   3 1: add c, move f to d
   104   2 2: copy e from a, change b
   105   2 2: copy e from a, change b
   105   1 4: merge 2 and 3, copy d from b
   106   1 4: merge 2 and 3
   106   0 5: change a
   107   0 5: change a
   107 
   108 
   108   $ glog conv1
   109   $ glog conv1
   109   o  3 "5: change a" files: a
   110   o  3 "5: change a" files: a
   110   |
   111   |
   111   o  2 "4: merge 2 and 3, copy d from b" files: a d e
   112   o  2 "4: merge 2 and 3" files: a e
   112   |
   113   |
   113   o  1 "2: copy e from a, change b" files: b e
   114   o  1 "2: copy e from a, change b" files: b e
   114   |
   115   |
   115   o  0 "1: add c" files: a b c
   116   o  0 "1: add c, move f to d" files: a b c d
   116   
   117   
   117   $ cd conv1
   118   $ cd conv1
   118   $ hg up -q
   119   $ hg up -q
   119 
   120 
   120 Check copy preservation
   121 Check copy preservation
   121 
   122 
   122   $ hg log --follow --copies e
   123   $ hg log --follow --copies e
   123   changeset:   2:79818a521a40
   124   changeset:   2:60633ee11cfa
   124   user:        test
   125   user:        test
   125   date:        Thu Jan 01 00:00:04 1970 +0000
   126   date:        Thu Jan 01 00:00:04 1970 +0000
   126   summary:     4: merge 2 and 3, copy d from b
   127   summary:     4: merge 2 and 3
   127   
   128   
   128   changeset:   1:3e6201832cce
   129   changeset:   1:d56e8baefff8
   129   user:        test
   130   user:        test
   130   date:        Thu Jan 01 00:00:02 1970 +0000
   131   date:        Thu Jan 01 00:00:02 1970 +0000
   131   summary:     2: copy e from a, change b
   132   summary:     2: copy e from a, change b
   132   
   133   
   133 Check copy removal on missing parent
   134 Check copy removal on missing parent
   134 
   135 
   135   $ hg log --follow --copies d
   136   $ hg log --follow --copies d
   136   changeset:   2:79818a521a40
   137   changeset:   0:23c3be426dce
   137   user:        test
   138   user:        test
   138   date:        Thu Jan 01 00:00:04 1970 +0000
   139   date:        Thu Jan 01 00:00:01 1970 +0000
   139   summary:     4: merge 2 and 3, copy d from b
   140   summary:     1: add c, move f to d
   140   
   141   
   141   $ hg cat -r tip a b
   142   $ hg cat -r tip a b
   142   a
   143   a
   143   a
   144   a
   144   a
   145   a
   152   $ hg convert --config convert.hg.startrev=4 source conv4
   153   $ hg convert --config convert.hg.startrev=4 source conv4
   153   initializing destination conv4 repository
   154   initializing destination conv4 repository
   154   scanning source...
   155   scanning source...
   155   sorting...
   156   sorting...
   156   converting...
   157   converting...
   157   1 4: merge 2 and 3, copy d from b
   158   1 4: merge 2 and 3
   158   0 5: change a
   159   0 5: change a
   159   $ glog conv4
   160   $ glog conv4
   160   o  1 "5: change a" files: a
   161   o  1 "5: change a" files: a
   161   |
   162   |
   162   o  0 "4: merge 2 and 3, copy d from b" files: a b c d e
   163   o  0 "4: merge 2 and 3" files: a b c d e
   163   
   164   
   164   $ cd conv4
   165   $ cd conv4
   165   $ hg up -C
   166   $ hg up -C
   166   5 files updated, 0 files merged, 0 files removed, 0 files unresolved
   167   5 files updated, 0 files merged, 0 files removed, 0 files unresolved
   167   $ hg cat -r tip a b
   168   $ hg cat -r tip a b