tests/test-rebase-inmemory.t
author Gregory Szorc <gregory.szorc@gmail.com>
Tue, 10 Apr 2018 14:29:15 -0700
changeset 37557 734515aca84d
parent 36981 795eb53f1d3e
child 38378 f4f1fb1cbfb4
permissions -rw-r--r--
wireproto: define and implement HTTP handshake to upgrade protocol When clients connect to repositories over HTTP, they issue a request to the well-known URL "?cmd=capabilities" to fetch the repository capabilities. This is the handshake portion of the HTTP protocol. This commit defines a mechanism to use that HTTP request to return information about modern server features. If a client sends an X-HgUpgrade-* header containing a list of client-supported API names, the server responds with a response containing information about available services. This includes the normal capabilities string. So if the server doesn't support any newer services, the client can easily fall back. By advertising supported services from clients, server operators can see and log what client support exists in the wild. This will also help with debugging. The response contains the base path to API services. We know there are potential issues with the <repo>/api/ URL space conflicting with hgwebdir and subrepos. By making the API URL dynamic from the perspective of the client, the URL for APIs is not subject to backwards compatibility concerns - at least as long as a ?cmd=capabilities request is made. We've also defined the ``cbor`` client capability for the X-HgProto-* header. This MUST be sent in order to get the modern response from "?cmd=capabilities". During implementation, I initially always sent an application/mercurial-cbor response. However, the handshake mechanism will be more future compatible if the client is in charge of which formats to request. We already perform content negotiation from X-HgProto-*, so keying off this for the capabilities response feels appropriate. In addition, I initially used application/cbor. However, it is conceivable that a non-Mercurial server could serve application/cbor. To rule out this possibility, I've invented a new media type that is Mercurial specific and can't be confused for generic CBOR. Differential Revision: https://phab.mercurial-scm.org/D3242
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     1
#require symlink execbit
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     2
  $ cat << EOF >> $HGRCPATH
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     3
  > [extensions]
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     4
  > amend=
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     5
  > rebase=
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     6
  > debugdrawdag=$TESTDIR/drawdag.py
35396
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
     7
  > [rebase]
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
     8
  > experimental.inmemory=1
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
     9
  > [diff]
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    10
  > git=1
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    11
  > [alias]
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    12
  > tglog = log -G --template "{rev}: {node|short} '{desc}'\n"
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    13
  > EOF
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    14
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    15
Rebase a simple DAG:
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    16
  $ hg init repo1
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    17
  $ cd repo1
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    18
  $ hg debugdrawdag <<'EOS'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    19
  > c b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    20
  > |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    21
  > d
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    22
  > |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    23
  > a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    24
  > EOS
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    25
  $ hg up -C a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    26
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    27
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    28
  o  3: 814f6bd05178 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    29
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    30
  | o  2: db0e82a16a62 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    31
  |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    32
  o  1: 02952614a83d 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    33
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    34
  @  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    35
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    36
  $ hg cat -r 3 c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    37
  c (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    38
  $ hg cat -r 2 b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    39
  b (no-eol)
35396
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
    40
  $ hg rebase --debug -r b -d c | grep rebasing
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    41
  rebasing in-memory
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    42
  rebasing 2:db0e82a16a62 "b" (b)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    43
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    44
  o  3: ca58782ad1e4 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    45
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    46
  o  2: 814f6bd05178 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    47
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    48
  o  1: 02952614a83d 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    49
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    50
  @  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    51
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    52
  $ hg cat -r 3 b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    53
  b (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    54
  $ hg cat -r 2 c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    55
  c (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    56
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    57
Case 2:
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    58
  $ hg init repo2
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    59
  $ cd repo2
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    60
  $ hg debugdrawdag <<'EOS'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    61
  > c b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    62
  > |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    63
  > d
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    64
  > |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    65
  > a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    66
  > EOS
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    67
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    68
Add a symlink and executable file:
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    69
  $ hg up -C c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    70
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    71
  $ ln -s somefile e
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    72
  $ echo f > f
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    73
  $ chmod +x f
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    74
  $ hg add e f
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    75
  $ hg amend -q
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    76
  $ hg up -Cq a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    77
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    78
Write files to the working copy, and ensure they're still there after the rebase
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    79
  $ echo "abc" > a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    80
  $ ln -s def b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    81
  $ echo "ghi" > c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    82
  $ echo "jkl" > d
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    83
  $ echo "mno" > e
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    84
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    85
  o  3: f56b71190a8f 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    86
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    87
  | o  2: db0e82a16a62 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    88
  |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    89
  o  1: 02952614a83d 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    90
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    91
  @  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    92
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    93
  $ hg cat -r 3 c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    94
  c (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    95
  $ hg cat -r 2 b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    96
  b (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    97
  $ hg cat -r 3 e
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
    98
  somefile (no-eol)
35396
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
    99
  $ hg rebase --debug -s b -d a | grep rebasing
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   100
  rebasing in-memory
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   101
  rebasing 2:db0e82a16a62 "b" (b)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   102
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   103
  o  3: fc055c3b4d33 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   104
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   105
  | o  2: f56b71190a8f 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   106
  | |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   107
  | o  1: 02952614a83d 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   108
  |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   109
  @  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   110
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   111
  $ hg cat -r 2 c
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   112
  c (no-eol)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   113
  $ hg cat -r 3 b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   114
  b (no-eol)
35396
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
   115
  $ hg rebase --debug -s 1 -d 3 | grep rebasing
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   116
  rebasing in-memory
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   117
  rebasing 1:02952614a83d "d" (d)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   118
  rebasing 2:f56b71190a8f "c"
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   119
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   120
  o  3: 753feb6fd12a 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   121
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   122
  o  2: 09c044d2cb43 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   123
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   124
  o  1: fc055c3b4d33 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   125
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   126
  @  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   127
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   128
Ensure working copy files are still there:
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   129
  $ cat a
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   130
  abc
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   131
  $ readlink.py b
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   132
  b -> def
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   133
  $ cat e
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   134
  mno
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   135
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   136
Ensure symlink and executable files were rebased properly:
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   137
  $ hg up -Cq 3
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   138
  $ readlink.py e
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   139
  e -> somefile
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   140
  $ ls -l f | cut -c -10
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   141
  -rwxr-xr-x
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   142
36981
795eb53f1d3e rebase: allow in-memory merge of the working copy parent
Martin von Zweigbergk <martinvonz@google.com>
parents: 35396
diff changeset
   143
Rebase the working copy parent
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   144
  $ hg up -C 3
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   145
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35396
dd11df900f7f rebase: replace --inmemory flag with rebase.experimental.inmemory config
Phil Cohen <phillco@fb.com>
parents: 35393
diff changeset
   146
  $ hg rebase -r 3 -d 0 --debug | grep rebasing
36981
795eb53f1d3e rebase: allow in-memory merge of the working copy parent
Martin von Zweigbergk <martinvonz@google.com>
parents: 35396
diff changeset
   147
  rebasing in-memory
35393
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   148
  rebasing 3:753feb6fd12a "c" (tip)
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   149
  $ hg tglog
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   150
  @  3: 844a7de3e617 'c'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   151
  |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   152
  | o  2: 09c044d2cb43 'd'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   153
  | |
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   154
  | o  1: fc055c3b4d33 'b'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   155
  |/
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   156
  o  0: b173517d0057 'a'
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   157
  
b9bdee046cc2 tests: add a simple test for in-memory rebase
Phil Cohen <phillco@fb.com>
parents:
diff changeset
   158