tests/test-largefiles-update.t
author Kevin Bullock <kbullock+mercurial@ringworld.org>
Tue, 18 Oct 2016 14:15:15 -0500
branchstable
changeset 30215 438173c41587
parent 30191 328545c7d8a1
parent 30060 a145161debed
child 30239 6e04f4ec4875
permissions -rw-r--r--
merge default into stable for 4.0 code freeze
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     1
This file focuses mainly on updating largefiles in the working
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     2
directory (and ".hg/largefiles/dirstate")
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     3
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     4
  $ cat >> $HGRCPATH <<EOF
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     5
  > [ui]
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     6
  > merge = internal:fail
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     7
  > [extensions]
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
     8
  > largefiles =
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28035
diff changeset
     9
  > [extdiff]
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28035
diff changeset
    10
  > # for portability:
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28035
diff changeset
    11
  > pdiff = sh "$RUNTESTDIR/pdiff"
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    12
  > EOF
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    13
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    14
  $ hg init repo
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    15
  $ cd repo
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    16
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    17
  $ echo large1 > large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    18
  $ echo large2 > large2
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    19
  $ hg add --large large1 large2
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    20
  $ echo normal1 > normal1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    21
  $ hg add normal1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    22
  $ hg commit -m '#0'
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    23
  $ echo 'large1 in #1' > large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    24
  $ echo 'normal1 in #1' > normal1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    25
  $ hg commit -m '#1'
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28035
diff changeset
    26
  $ hg pdiff -r '.^' --config extensions.extdiff=
28033
0707bbec682d tests: omit -p for external diff via extdiff extension for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28030
diff changeset
    27
  diff -Nru repo.0d9d9b8dc9a3/.hglf/large1 repo/.hglf/large1
25812
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    28
  --- repo.0d9d9b8dc9a3/.hglf/large1	* (glob)
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    29
  +++ repo/.hglf/large1	* (glob)
28035
c65da6892ae5 tests: make chunk header of external diff glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
    30
  @@ -1* +1* @@ (glob)
25812
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    31
  -4669e532d5b2c093a78eca010077e708a071bb64
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    32
  +58e24f733a964da346e2407a2bee99d9001184f5
28033
0707bbec682d tests: omit -p for external diff via extdiff extension for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28030
diff changeset
    33
  diff -Nru repo.0d9d9b8dc9a3/normal1 repo/normal1
25812
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    34
  --- repo.0d9d9b8dc9a3/normal1	* (glob)
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    35
  +++ repo/normal1	* (glob)
28035
c65da6892ae5 tests: make chunk header of external diff glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
    36
  @@ -1* +1* @@ (glob)
25812
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    37
  -normal1
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    38
  +normal1 in #1
68822b7cdd01 extdiff: use archiver to take snapshots of committed revisions
Matt Harbison <matt_harbison@yahoo.com>
parents: 23841
diff changeset
    39
  [1]
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    40
  $ hg update -q -C 0
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    41
  $ echo 'large2 in #2' > large2
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    42
  $ hg commit -m '#2'
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    43
  created new head
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    44
23841
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    45
Test that update also updates the lfdirstate of 'unsure' largefiles after
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    46
hashing them:
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    47
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    48
The previous operations will usually have left us with largefiles with a mtime
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    49
within the same second as the dirstate was written.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    50
The lfdirstate entries will thus have been written with an invalidated/unset
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    51
mtime to make sure further changes within the same second is detected.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    52
We will however occasionally be "lucky" and get a tick between writing
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    53
largefiles and writing dirstate so we get valid lfdirstate timestamps. The
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    54
following verification is thus disabled but can be verified manually.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    55
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    56
#if false
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    57
  $ hg debugdirstate --large --nodate
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    58
  n 644          7 unset               large1
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    59
  n 644         13 unset               large2
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    60
#endif
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    61
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    62
Wait to make sure we get a tick so the mtime of the largefiles become valid.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    63
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    64
  $ sleep 1
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    65
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    66
A linear merge will update standins before performing the actual merge. It will
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    67
do a lfdirstate status walk and find 'unset'/'unsure' files, hash them, and
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    68
update the corresponding standins.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    69
Verify that it actually marks the clean files as clean in lfdirstate so
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    70
we don't have to hash them again next time we update.
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    71
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    72
  $ hg up
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    73
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28029
72072cfc7e91 update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27903
diff changeset
    74
  1 other heads for branch "default"
23841
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    75
  $ hg debugdirstate --large --nodate
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    76
  n 644          7 set                 large1
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    77
  n 644         13 set                 large2
9d25bb84cf6c largefiles: make linear update set unsure largefiles normal if unchanged
Mads Kiilerich <madski@unity3d.com>
parents: 23840
diff changeset
    78
23694
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    79
Test that lfdirstate keeps track of last modification of largefiles and
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    80
prevents unnecessary hashing of content - also after linear/noop update
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    81
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    82
  $ sleep 1
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    83
  $ hg st
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    84
  $ hg debugdirstate --large --nodate
23840
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
    85
  n 644          7 set                 large1
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
    86
  n 644         13 set                 large2
23694
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    87
  $ hg up
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    88
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28029
72072cfc7e91 update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27903
diff changeset
    89
  1 other heads for branch "default"
23694
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    90
  $ hg debugdirstate --large --nodate
23840
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
    91
  n 644          7 set                 large1
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
    92
  n 644         13 set                 large2
23694
97eb62b0f4a9 tests: add test coverage for lfdirstate invalidation of linear update
Mads Kiilerich <madski@unity3d.com>
parents: 23383
diff changeset
    93
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    94
Test that "hg merge" updates largefiles from "other" correctly
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    95
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    96
(getting largefiles from "other" normally)
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    97
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    98
  $ hg status -A large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
    99
  C large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   100
  $ cat large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   101
  large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   102
  $ cat .hglf/large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   103
  4669e532d5b2c093a78eca010077e708a071bb64
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   104
  $ hg merge --config debug.dirstate.delaywrite=2
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   105
  getting changed largefiles
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   106
  1 largefiles updated, 0 removed
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   107
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   108
  (branch merge, don't forget to commit)
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   109
  $ hg status -A large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   110
  M large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   111
  $ cat large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   112
  large1 in #1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   113
  $ cat .hglf/large1
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   114
  58e24f733a964da346e2407a2bee99d9001184f5
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   115
  $ hg diff -c 1 --nodates .hglf/large1 | grep '^[+-][0-9a-z]'
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   116
  -4669e532d5b2c093a78eca010077e708a071bb64
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   117
  +58e24f733a964da346e2407a2bee99d9001184f5
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   118
21933
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   119
(getting largefiles from "other" via conflict prompt)
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   120
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   121
  $ hg update -q -C 2
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   122
  $ echo 'large1 in #3' > large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   123
  $ echo 'normal1 in #3' > normal1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   124
  $ hg commit -m '#3'
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   125
  $ cat .hglf/large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   126
  e5bb990443d6a92aaf7223813720f7566c9dd05b
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   127
  $ hg merge --config debug.dirstate.delaywrite=2 --config ui.interactive=True <<EOF
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   128
  > o
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   129
  > EOF
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   130
  largefile large1 has a merge conflict
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   131
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   132
  keep (l)ocal e5bb990443d6a92aaf7223813720f7566c9dd05b or
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   133
  take (o)ther 58e24f733a964da346e2407a2bee99d9001184f5? o
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   134
  merging normal1
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 25812
diff changeset
   135
  warning: conflicts while merging normal1! (edit, then use 'hg resolve --mark')
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   136
  getting changed largefiles
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   137
  1 largefiles updated, 0 removed
21933
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   138
  0 files updated, 1 files merged, 0 files removed, 1 files unresolved
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   139
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   140
  [1]
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   141
  $ hg status -A large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   142
  M large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   143
  $ cat large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   144
  large1 in #1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   145
  $ cat .hglf/large1
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   146
  58e24f733a964da346e2407a2bee99d9001184f5
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   147
  $ rm normal1.orig
21933
8ecbe55fd09d largefiles: invoke "normallookup" on "lfdirstate" for merged files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21932
diff changeset
   148
26627
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   149
(merge non-existing largefiles from "other" via conflict prompt -
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   150
make sure the following commit doesn't abort in a confusing way when trying to
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   151
mark the non-existing file as normal in lfdirstate)
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   152
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   153
  $ mv .hg/largefiles/58e24f733a964da346e2407a2bee99d9001184f5 .
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   154
  $ hg update -q -C 3
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   155
  $ hg merge --config largefiles.usercache=not --config debug.dirstate.delaywrite=2 --tool :local --config ui.interactive=True <<EOF
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   156
  > o
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   157
  > EOF
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   158
  largefile large1 has a merge conflict
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   159
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   160
  keep (l)ocal e5bb990443d6a92aaf7223813720f7566c9dd05b or
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   161
  take (o)ther 58e24f733a964da346e2407a2bee99d9001184f5? o
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   162
  getting changed largefiles
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   163
  large1: largefile 58e24f733a964da346e2407a2bee99d9001184f5 not available from file:/*/$TESTTMP/repo (glob)
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   164
  0 largefiles updated, 0 removed
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   165
  0 files updated, 2 files merged, 0 files removed, 0 files unresolved
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   166
  (branch merge, don't forget to commit)
27903
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   167
  $ hg commit -m '1-2-3 testing' --config largefiles.usercache=not
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   168
  large1: largefile 58e24f733a964da346e2407a2bee99d9001184f5 not available from local store
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   169
  $ hg up -C . --config largefiles.usercache=not
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   170
  getting changed largefiles
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   171
  large1: largefile 58e24f733a964da346e2407a2bee99d9001184f5 not available from file:/*/$TESTTMP/repo (glob)
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   172
  0 largefiles updated, 0 removed
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   173
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   174
  $ hg st large1
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   175
  ! large1
26627
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   176
  $ hg rollback -q
27903
512a814c5595 largefiles: fix commit of missing largefiles
Mads Kiilerich <madski@unity3d.com>
parents: 27789
diff changeset
   177
  $ mv 58e24f733a964da346e2407a2bee99d9001184f5 .hg/largefiles/
26627
832c98d79587 largefiles: better handling of merge of largefiles that not are available
Mads Kiilerich <madski@unity3d.com>
parents: 26614
diff changeset
   178
21934
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   179
Test that "hg revert -r REV" updates largefiles from "REV" correctly
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   180
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   181
  $ hg update -q -C 3
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   182
  $ hg status -A large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   183
  C large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   184
  $ cat large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   185
  large1 in #3
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   186
  $ cat .hglf/large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   187
  e5bb990443d6a92aaf7223813720f7566c9dd05b
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   188
  $ hg diff -c 1 --nodates .hglf/large1 | grep '^[+-][0-9a-z]'
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   189
  -4669e532d5b2c093a78eca010077e708a071bb64
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   190
  +58e24f733a964da346e2407a2bee99d9001184f5
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   191
  $ hg revert --no-backup -r 1 --config debug.dirstate.delaywrite=2 large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   192
  $ hg status -A large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   193
  M large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   194
  $ cat large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   195
  large1 in #1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   196
  $ cat .hglf/large1
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   197
  58e24f733a964da346e2407a2bee99d9001184f5
0cb34b3991f8 largefiles: use "normallookup" on "lfdirstate" while reverting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21933
diff changeset
   198
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   199
Test that "hg rollback" restores status of largefiles correctly
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   200
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   201
  $ hg update -C -q
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   202
  $ hg remove large1
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   203
  $ test -f .hglf/large1
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   204
  [1]
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   205
  $ hg forget large2
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   206
  $ test -f .hglf/large2
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   207
  [1]
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   208
  $ echo largeX > largeX
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   209
  $ hg add --large largeX
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   210
  $ cat .hglf/largeX
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   211
  
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   212
  $ hg commit -m 'will be rollback-ed soon'
22097
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   213
  $ echo largeY > largeY
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   214
  $ hg add --large largeY
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   215
#if windows
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   216
  $ hg status -A large1
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   217
  large1: * (glob)
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   218
#else
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   219
  $ hg status -A large1
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   220
  large1: No such file or directory
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   221
#endif
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   222
  $ hg status -A large2
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   223
  ? large2
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   224
  $ hg status -A largeX
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   225
  C largeX
22097
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   226
  $ hg status -A largeY
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   227
  A largeY
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   228
  $ hg rollback
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   229
  repository tip rolled back to revision 3 (undo commit)
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   230
  working directory now based on revision 3
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   231
  $ hg status -A large1
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   232
  R large1
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   233
  $ test -f .hglf/large1
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   234
  [1]
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   235
  $ hg status -A large2
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   236
  R large2
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   237
  $ test -f .hglf/large2
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   238
  [1]
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   239
  $ hg status -A largeX
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   240
  A largeX
22285
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   241
  $ cat .hglf/largeX
85bded43cc80 largefiles: restore standins according to restored dirstate
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22284
diff changeset
   242
  
22097
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   243
  $ hg status -A largeY
7d1eac06ab2b largefiles: drop orphan entries from lfdristat at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22096
diff changeset
   244
  ? largeY
22286
3f3b9483e7ef largefiles: unlink standins not known to the restored dirstate at rollback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22285
diff changeset
   245
  $ test -f .hglf/largeY
3f3b9483e7ef largefiles: unlink standins not known to the restored dirstate at rollback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22285
diff changeset
   246
  [1]
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   247
  $ rm largeY
22096
61e526585b20 largefiles: restore R status of removed largefiles correctly at "hg rollback"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21934
diff changeset
   248
22283
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   249
Test that "hg rollback" restores standins correctly
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   250
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   251
  $ hg commit -m 'will be rollback-ed soon'
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   252
  $ hg update -q -C 2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   253
  $ cat large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   254
  large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   255
  $ cat .hglf/large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   256
  4669e532d5b2c093a78eca010077e708a071bb64
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   257
  $ cat large2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   258
  large2 in #2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   259
  $ cat .hglf/large2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   260
  3cfce6277e7668985707b6887ce56f9f62f6ccd9
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   261
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   262
  $ hg rollback -q -f
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   263
  $ cat large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   264
  large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   265
  $ cat .hglf/large1
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   266
  4669e532d5b2c093a78eca010077e708a071bb64
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   267
  $ cat large2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   268
  large2 in #2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   269
  $ cat .hglf/large2
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   270
  3cfce6277e7668985707b6887ce56f9f62f6ccd9
cb556ea76dcd largefiles: omit restoring standins if working parent is not rollbacked
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22197
diff changeset
   271
22284
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   272
(rollback the parent of the working directory, when the parent of it
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   273
is not branch-tip)
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   274
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   275
  $ hg update -q -C 1
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   276
  $ cat .hglf/large1
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   277
  58e24f733a964da346e2407a2bee99d9001184f5
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   278
  $ cat .hglf/large2
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   279
  1deebade43c8c498a3c8daddac0244dc55d1331d
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   280
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   281
  $ echo normalX > normalX
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   282
  $ hg add normalX
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   283
  $ hg commit -m 'will be rollback-ed soon'
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   284
  $ hg rollback -q
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   285
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   286
  $ cat .hglf/large1
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   287
  58e24f733a964da346e2407a2bee99d9001184f5
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   288
  $ cat .hglf/large2
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   289
  1deebade43c8c498a3c8daddac0244dc55d1331d
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   290
  $ rm normalX
22284
72b378658cff largefiles: restore standins from non branch-tip parent at rollback correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22283
diff changeset
   291
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   292
Test that "hg status" shows status of largefiles correctly just after
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   293
automated commit like rebase/transplant
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   294
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   295
  $ cat >> .hg/hgrc <<EOF
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   296
  > [extensions]
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   297
  > rebase =
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   298
  > strip =
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   299
  > transplant =
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   300
  > EOF
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   301
  $ hg update -q -C 1
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   302
  $ hg remove large1
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   303
  $ echo largeX > largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   304
  $ hg add --large largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   305
  $ hg commit -m '#4'
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   306
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   307
  $ hg rebase -s 1 -d 2 --keep
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23394
diff changeset
   308
  rebasing 1:72518492caa6 "#1"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23394
diff changeset
   309
  rebasing 4:07d6153b5c04 "#4" (tip)
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   310
#if windows
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   311
  $ hg status -A large1
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   312
  large1: * (glob)
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   313
#else
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   314
  $ hg status -A large1
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   315
  large1: No such file or directory
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   316
#endif
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   317
  $ hg status -A largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   318
  C largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   319
  $ hg strip -q 5
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   320
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   321
  $ hg update -q -C 2
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   322
  $ hg transplant -q 1 4
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   323
#if windows
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   324
  $ hg status -A large1
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   325
  large1: * (glob)
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   326
#else
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   327
  $ hg status -A large1
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   328
  large1: No such file or directory
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   329
#endif
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   330
  $ hg status -A largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   331
  C largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   332
  $ hg strip -q 5
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   333
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   334
  $ hg update -q -C 2
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   335
  $ hg transplant -q --merge 1 --merge 4
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   336
#if windows
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   337
  $ hg status -A large1
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   338
  large1: * (glob)
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   339
#else
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   340
  $ hg status -A large1
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   341
  large1: No such file or directory
23058
6099b518643c tests: add "(glob)" for l10n messages in test-largefiles-update.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22590
diff changeset
   342
#endif
22098
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   343
  $ hg status -A largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   344
  C largeX
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   345
  $ hg strip -q 5
2fb3c1c0b4ef largefiles: synchronize lfdirstate with dirstate after automated committing
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22097
diff changeset
   346
22195
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   347
Test that linear merge can detect modification (and conflict) correctly
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   348
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   349
(linear merge without conflict)
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   350
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   351
  $ echo 'large2 for linear merge (no conflict)' > large2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   352
  $ hg update 3 --config debug.dirstate.delaywrite=2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   353
  getting changed largefiles
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   354
  1 largefiles updated, 0 removed
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   355
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   356
  $ hg status -A large2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   357
  M large2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   358
  $ cat large2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   359
  large2 for linear merge (no conflict)
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   360
  $ cat .hglf/large2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   361
  9c4bf8f1b33536d6e5f89447e10620cfe52ea710
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   362
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   363
(linear merge with conflict, choosing "other")
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   364
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   365
  $ hg update -q -C 2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   366
  $ echo 'large1 for linear merge (conflict)' > large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   367
  $ hg update 3 --config ui.interactive=True <<EOF
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   368
  > o
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   369
  > EOF
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   370
  largefile large1 has a merge conflict
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   371
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   372
  keep (l)ocal ba94c2efe5b7c5e0af8d189295ce00553b0612b7 or
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   373
  take (o)ther e5bb990443d6a92aaf7223813720f7566c9dd05b? o
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   374
  getting changed largefiles
22195
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   375
  1 largefiles updated, 0 removed
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   376
  1 files updated, 1 files merged, 0 files removed, 0 files unresolved
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   377
  $ hg status -A large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   378
  C large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   379
  $ cat large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   380
  large1 in #3
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   381
  $ cat .hglf/large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   382
  e5bb990443d6a92aaf7223813720f7566c9dd05b
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   383
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   384
(linear merge with conflict, choosing "local")
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   385
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   386
  $ hg update -q -C 2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   387
  $ echo 'large1 for linear merge (conflict)' > large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   388
  $ hg update 3 --config debug.dirstate.delaywrite=2
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   389
  largefile large1 has a merge conflict
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   390
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   391
  keep (l)ocal ba94c2efe5b7c5e0af8d189295ce00553b0612b7 or
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   392
  take (o)ther e5bb990443d6a92aaf7223813720f7566c9dd05b? l
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   393
  1 files updated, 1 files merged, 0 files removed, 0 files unresolved
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   394
  $ hg status -A large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   395
  M large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   396
  $ cat large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   397
  large1 for linear merge (conflict)
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   398
  $ cat .hglf/large1
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   399
  ba94c2efe5b7c5e0af8d189295ce00553b0612b7
1dad76c0afb7 largefiles: add test for large/normal conflict at linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22098
diff changeset
   400
22196
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   401
Test a linear merge to a revision containing same-name normal file
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   402
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   403
  $ hg update -q -C 3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   404
  $ hg remove large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   405
  $ echo 'large2 as normal file' > large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   406
  $ hg add large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   407
  $ echo 'large3 as normal file' > large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   408
  $ hg add large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   409
  $ hg commit -m '#5'
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   410
  $ hg manifest
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   411
  .hglf/large1
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   412
  large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   413
  large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   414
  normal1
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   415
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   416
(modified largefile is already switched to normal)
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   417
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   418
  $ hg update -q -C 2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   419
  $ echo 'modified large2 for linear merge' > large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   420
  $ hg update -q 5
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   421
  remote turned local largefile large2 into a normal file
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   422
  keep (l)argefile or use (n)ormal file? l
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   423
  $ hg debugdirstate --nodates | grep large2
23840
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
   424
  a   0         -1 unset               .hglf/large2
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
   425
  r   0          0 set                 large2
22197
f72d73937853 largefiles: update lfdirstate for unchanged largefiles during linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22196
diff changeset
   426
  $ hg status -A large2
f72d73937853 largefiles: update lfdirstate for unchanged largefiles during linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22196
diff changeset
   427
  A large2
22196
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   428
  $ cat large2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   429
  modified large2 for linear merge
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   430
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   431
(added largefile is already committed as normal)
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   432
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   433
  $ hg update -q -C 2
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   434
  $ echo 'large3 as large file for linear merge' > large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   435
  $ hg add --large large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   436
  $ hg update -q 5
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   437
  remote turned local largefile large3 into a normal file
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   438
  keep (l)argefile or use (n)ormal file? l
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   439
  $ hg debugdirstate --nodates | grep large3
23840
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
   440
  a   0         -1 unset               .hglf/large3
ddc17eaf0f1b debugdirstate: don't hide date field with --nodate, just show 'set'/'unset'
Mads Kiilerich <madski@unity3d.com>
parents: 23835
diff changeset
   441
  r   0          0 set                 large3
22197
f72d73937853 largefiles: update lfdirstate for unchanged largefiles during linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22196
diff changeset
   442
  $ hg status -A large3
f72d73937853 largefiles: update lfdirstate for unchanged largefiles during linear merging
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22196
diff changeset
   443
  A large3
22196
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   444
  $ cat large3
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   445
  large3 as large file for linear merge
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   446
  $ rm -f large3 .hglf/large3
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   447
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   448
Test that the internal linear merging works correctly
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   449
(both heads are stripped to keep pairing of revision number and commit log)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   450
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   451
  $ hg update -q -C 2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   452
  $ hg strip 3 4
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23706
diff changeset
   453
  saved backup bundle to $TESTTMP/repo/.hg/strip-backup/9530e27857f7-2e7b195d-backup.hg (glob)
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23706
diff changeset
   454
  $ mv .hg/strip-backup/9530e27857f7-2e7b195d-backup.hg $TESTTMP
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   455
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   456
(internal linear merging at "hg pull --update")
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   457
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   458
  $ echo 'large1 for linear merge (conflict)' > large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   459
  $ echo 'large2 for linear merge (conflict with normal file)' > large2
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23706
diff changeset
   460
  $ hg pull --update --config debug.dirstate.delaywrite=2 $TESTTMP/9530e27857f7-2e7b195d-backup.hg
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23706
diff changeset
   461
  pulling from $TESTTMP/9530e27857f7-2e7b195d-backup.hg (glob)
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   462
  searching for changes
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   463
  adding changesets
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   464
  adding manifests
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   465
  adding file changes
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   466
  added 3 changesets with 5 changes to 5 files
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   467
  remote turned local largefile large2 into a normal file
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   468
  keep (l)argefile or use (n)ormal file? l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   469
  largefile large1 has a merge conflict
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   470
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   471
  keep (l)ocal ba94c2efe5b7c5e0af8d189295ce00553b0612b7 or
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   472
  take (o)ther e5bb990443d6a92aaf7223813720f7566c9dd05b? l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   473
  2 files updated, 1 files merged, 0 files removed, 0 files unresolved
28030
ca2a0a654f54 update: warn about other topological head in pull and unbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28029
diff changeset
   474
  1 other heads for branch "default"
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   475
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   476
  $ hg status -A large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   477
  M large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   478
  $ cat large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   479
  large1 for linear merge (conflict)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   480
  $ cat .hglf/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   481
  ba94c2efe5b7c5e0af8d189295ce00553b0612b7
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   482
  $ hg status -A large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   483
  A large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   484
  $ cat large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   485
  large2 for linear merge (conflict with normal file)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   486
  $ cat .hglf/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   487
  d7591fe9be0f6227d90bddf3e4f52ff41fc1f544
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   488
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   489
(internal linear merging at "hg unbundle --update")
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   490
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   491
  $ hg update -q -C 2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   492
  $ hg rollback -q
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   493
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   494
  $ echo 'large1 for linear merge (conflict)' > large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   495
  $ echo 'large2 for linear merge (conflict with normal file)' > large2
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23706
diff changeset
   496
  $ hg unbundle --update --config debug.dirstate.delaywrite=2 $TESTTMP/9530e27857f7-2e7b195d-backup.hg
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   497
  adding changesets
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   498
  adding manifests
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   499
  adding file changes
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   500
  added 3 changesets with 5 changes to 5 files
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   501
  remote turned local largefile large2 into a normal file
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   502
  keep (l)argefile or use (n)ormal file? l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   503
  largefile large1 has a merge conflict
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   504
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   505
  keep (l)ocal ba94c2efe5b7c5e0af8d189295ce00553b0612b7 or
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   506
  take (o)ther e5bb990443d6a92aaf7223813720f7566c9dd05b? l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   507
  2 files updated, 1 files merged, 0 files removed, 0 files unresolved
28030
ca2a0a654f54 update: warn about other topological head in pull and unbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28029
diff changeset
   508
  1 other heads for branch "default"
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   509
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   510
  $ hg status -A large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   511
  M large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   512
  $ cat large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   513
  large1 for linear merge (conflict)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   514
  $ cat .hglf/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   515
  ba94c2efe5b7c5e0af8d189295ce00553b0612b7
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   516
  $ hg status -A large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   517
  A large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   518
  $ cat large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   519
  large2 for linear merge (conflict with normal file)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   520
  $ cat .hglf/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   521
  d7591fe9be0f6227d90bddf3e4f52ff41fc1f544
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   522
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   523
(internal linear merging in subrepo at "hg update")
22196
23fe278bde43 largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22195
diff changeset
   524
21932
21a2f31f054d largefiles: use "normallookup", if "mtime" of standin is unset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
diff changeset
   525
  $ cd ..
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   526
  $ hg init subparent
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   527
  $ cd subparent
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   528
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   529
  $ hg clone -q -u 2 ../repo sub
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   530
  $ cat > .hgsub <<EOF
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   531
  > sub = sub
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   532
  > EOF
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   533
  $ hg add .hgsub
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   534
  $ hg commit -m '#0@parent'
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   535
  $ cat .hgsubstate
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   536
  f74e50bd9e5594b7cf1e6c5cbab86ddd25f3ca2f sub
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   537
  $ hg -R sub update -q
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   538
  $ hg commit -m '#1@parent'
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   539
  $ cat .hgsubstate
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   540
  d65e59e952a9638e2ce863b41a420ca723dd3e8d sub
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   541
  $ hg update -q 0
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   542
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   543
  $ echo 'large1 for linear merge (conflict)' > sub/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   544
  $ echo 'large2 for linear merge (conflict with normal file)' > sub/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   545
  $ hg update --config ui.interactive=True --config debug.dirstate.delaywrite=2 <<EOF
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   546
  > m
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   547
  > r
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   548
  > l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   549
  > l
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   550
  > EOF
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   551
   subrepository sub diverged (local revision: f74e50bd9e55, remote revision: d65e59e952a9)
30060
a145161debed merge: use labels in subrepo merge
Simon Farnsworth <simonfar@fb.com>
parents: 29775
diff changeset
   552
  (M)erge, keep (l)ocal [working copy] or keep (r)emote [destination]? m
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   553
   subrepository sources for sub differ (in checked out version)
22590
d4c972b97fee subrepo: remove superfluous newline from subrepo prompt
Mads Kiilerich <madski@unity3d.com>
parents: 22589
diff changeset
   554
  use (l)ocal source (f74e50bd9e55) or (r)emote source (d65e59e952a9)? r
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   555
  remote turned local largefile large2 into a normal file
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   556
  keep (l)argefile or use (n)ormal file? l
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   557
  largefile large1 has a merge conflict
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   558
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   559
  keep (l)ocal ba94c2efe5b7c5e0af8d189295ce00553b0612b7 or
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   560
  take (o)ther e5bb990443d6a92aaf7223813720f7566c9dd05b? l
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   561
  2 files updated, 1 files merged, 0 files removed, 0 files unresolved
22287
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   562
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   563
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   564
  $ hg -R sub status -A sub/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   565
  M sub/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   566
  $ cat sub/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   567
  large1 for linear merge (conflict)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   568
  $ cat sub/.hglf/large1
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   569
  ba94c2efe5b7c5e0af8d189295ce00553b0612b7
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   570
  $ hg -R sub status -A sub/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   571
  A sub/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   572
  $ cat sub/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   573
  large2 for linear merge (conflict with normal file)
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   574
  $ cat sub/.hglf/large2
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   575
  d7591fe9be0f6227d90bddf3e4f52ff41fc1f544
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   576
f3ac9677fa2b largefiles: move "updatestandin" invocation to "hg.updaterepo" wrapper
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22286
diff changeset
   577
  $ cd ..
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   578
  $ cd repo
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   579
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   580
Test that rebase updates largefiles in the working directory even if
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   581
it is aborted by conflict.
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   582
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   583
  $ hg update -q -C 3
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   584
  $ cat .hglf/large1
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   585
  e5bb990443d6a92aaf7223813720f7566c9dd05b
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   586
  $ cat large1
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   587
  large1 in #3
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   588
  $ hg rebase -s 1 -d 3 --keep --config ui.interactive=True <<EOF
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   589
  > o
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   590
  > EOF
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23394
diff changeset
   591
  rebasing 1:72518492caa6 "#1"
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   592
  largefile large1 has a merge conflict
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   593
  ancestor was 4669e532d5b2c093a78eca010077e708a071bb64
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   594
  keep (l)ocal e5bb990443d6a92aaf7223813720f7566c9dd05b or
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   595
  take (o)ther 58e24f733a964da346e2407a2bee99d9001184f5? o
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22289
diff changeset
   596
  merging normal1
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 25812
diff changeset
   597
  warning: conflicts while merging normal1! (edit, then use 'hg resolve --mark')
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   598
  unresolved conflicts (see hg resolve, then hg rebase --continue)
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   599
  [1]
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   600
  $ cat .hglf/large1
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   601
  58e24f733a964da346e2407a2bee99d9001184f5
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   602
  $ cat large1
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   603
  large1 in #1
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   604
  $ rm normal1.orig
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   605
23187
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   606
Test that rebase updates standins for manually modified largefiles at
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   607
the 1st commit of resuming.
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   608
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   609
  $ echo "manually modified before 'hg rebase --continue'" > large1
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   610
  $ hg resolve -m normal1
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   611
  (no more unresolved files)
27626
157675d0f600 rebase: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27163
diff changeset
   612
  continue: hg rebase --continue
23187
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   613
  $ hg rebase --continue --config ui.interactive=True <<EOF
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   614
  > c
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   615
  > EOF
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23394
diff changeset
   616
  rebasing 1:72518492caa6 "#1"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23394
diff changeset
   617
  rebasing 4:07d6153b5c04 "#4"
29775
978b907d9b36 merge: always use other, not remote, in user prompts
Simon Farnsworth <simonfar@fb.com>
parents: 29774
diff changeset
   618
  local [dest] changed .hglf/large1 which other [source] deleted
27163
27b89a0957ec filemerge: add a 'leave unresolved' option to change/delete prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26627
diff changeset
   619
  use (c)hanged version, (d)elete, or leave (u)nresolved? c
23187
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   620
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   621
  $ hg diff -c "tip~1" --nodates .hglf/large1 | grep '^[+-][0-9a-z]'
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   622
  -e5bb990443d6a92aaf7223813720f7566c9dd05b
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   623
  +8a4f783556e7dea21139ca0466eafce954c75c13
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   624
  $ rm -f large1
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   625
  $ hg update -q -C tip
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   626
  $ cat large1
f726b05ecfe6 largefiles: update standins only at the 1st commit of "hg rebase --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   627
  manually modified before 'hg rebase --continue'
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   628
22289
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   629
Test that transplant updates largefiles, of which standins are safely
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   630
changed, even if it is aborted by conflict of other.
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   631
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   632
  $ hg update -q -C 5
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   633
  $ cat .hglf/large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   634
  e5bb990443d6a92aaf7223813720f7566c9dd05b
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   635
  $ cat large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   636
  large1 in #3
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   637
  $ hg diff -c 4 .hglf/largeX | grep '^[+-][0-9a-z]'
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   638
  +fa44618ea25181aff4f48b70428294790cec9f61
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   639
  $ hg transplant 4
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   640
  applying 07d6153b5c04
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   641
  patching file .hglf/large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   642
  Hunk #1 FAILED at 0
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   643
  1 out of 1 hunks FAILED -- saving rejects to file .hglf/large1.rej
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   644
  patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27626
diff changeset
   645
  abort: fix up the working directory and run hg transplant --continue
22289
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   646
  [255]
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   647
  $ hg status -A large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   648
  C large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   649
  $ cat .hglf/large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   650
  e5bb990443d6a92aaf7223813720f7566c9dd05b
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   651
  $ cat large1
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   652
  large1 in #3
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   653
  $ hg status -A largeX
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   654
  A largeX
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   655
  $ cat .hglf/largeX
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   656
  fa44618ea25181aff4f48b70428294790cec9f61
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   657
  $ cat largeX
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   658
  largeX
e26df4e774f6 largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22288
diff changeset
   659
23274
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   660
Test that transplant updates standins for manually modified largefiles
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   661
at the 1st commit of resuming.
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   662
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   663
  $ echo "manually modified before 'hg transplant --continue'" > large1
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   664
  $ hg transplant --continue
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   665
  07d6153b5c04 transplanted as f1bf30eb88cc
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   666
  $ hg diff -c tip .hglf/large1 | grep '^[+-][0-9a-z]'
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   667
  -e5bb990443d6a92aaf7223813720f7566c9dd05b
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   668
  +6a4f36d4075fbe0f30ec1d26ca44e63c05903671
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   669
  $ rm -f large1
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   670
  $ hg update -q -C tip
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   671
  $ cat large1
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   672
  manually modified before 'hg transplant --continue'
0ec2e124fcc0 largefiles: update standins only at the 1st commit of "transplant --continue"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23187
diff changeset
   673
23089
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   674
Test that "hg status" doesn't show removal of largefiles not managed
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   675
in the target context.
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   676
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   677
  $ hg update -q -C 4
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   678
  $ hg remove largeX
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   679
  $ hg status -A largeX
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   680
  R largeX
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   681
  $ hg status -A --rev '.^1' largeX
197dc4580da2 largefiles: ignore removal status of files not managed in the target context
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23058
diff changeset
   682
23090
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   683
#if execbit
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   684
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   685
Test that "hg status" against revisions other than parent notices exec
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   686
bit changes of largefiles.
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   687
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   688
  $ hg update -q -C 4
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   689
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   690
(the case that large2 doesn't have exec bit in the target context but
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   691
in the working context)
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   692
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   693
  $ chmod +x large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   694
  $ hg status -A --rev 0 large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   695
  M large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   696
  $ hg commit -m 'chmod +x large2'
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   697
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   698
(the case that large2 has exec bit in the target context but not in
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   699
the working context)
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   700
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   701
  $ echo dummy > dummy
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   702
  $ hg add dummy
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   703
  $ hg commit -m 'revision for separation'
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   704
  $ chmod -x large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   705
  $ hg status -A --rev '.^1' large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   706
  M large2
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   707
23383
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   708
#else
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   709
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   710
Test that "hg status" against revisions other than parent ignores exec
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   711
bit correctly on the platform being unaware of it.
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   712
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   713
  $ hg update -q -C 4
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   714
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   715
  $ cat > exec-bit.patch <<EOF
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   716
  > # HG changeset patch
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   717
  > # User test
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   718
  > # Date 0 0
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   719
  > #      Thu Jan 01 00:00:00 1970 +0000
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   720
  > # Node ID be1b433a65b12b27b5519d92213e14f7e1769b90
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   721
  > # Parent  07d6153b5c04313efb75deec9ba577de7faeb727
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   722
  > chmod +x large2
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   723
  > 
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   724
  > diff --git a/.hglf/large2 b/.hglf/large2
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   725
  > old mode 100644
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   726
  > new mode 100755
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   727
  > EOF
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   728
  $ hg import --exact --bypass exec-bit.patch
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   729
  applying exec-bit.patch
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   730
  $ hg status -A --rev tip large2
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   731
  C large2
7f8d27e1f862 largefiles: avoid exec-bit examination on the platform being unaware of it
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23090
diff changeset
   732
23090
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   733
#endif
24600c9d7f4e largefiles: add examination of exec bit in "hg status --rev REV" case
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23089
diff changeset
   734
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   735
Test a fatal error interrupting an update. Verify that status report dirty
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   736
files correctly after an interrupted update. Also verify that checking all
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   737
hashes reveals it isn't clean.
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   738
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   739
Start with clean dirstates:
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   740
  $ hg up -qcr "8^"
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   741
  $ sleep 1
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   742
  $ hg st
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   743
Update standins without updating largefiles - large1 is modified and largeX is
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   744
added:
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   745
  $ cat << EOF > ../crashupdatelfiles.py
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   746
  > import hgext.largefiles.lfutil
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   747
  > def getlfilestoupdate(oldstandins, newstandins):
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   748
  >      raise SystemExit(7)
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   749
  > hgext.largefiles.lfutil.getlfilestoupdate = getlfilestoupdate
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   750
  > EOF
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   751
  $ hg up -Cr "8" --config extensions.crashupdatelfiles=../crashupdatelfiles.py
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   752
  [7]
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   753
Check large1 content and status ... and that update will undo modifications:
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   754
  $ cat large1
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   755
  large1 in #3
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   756
  $ hg st
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   757
  M large1
30191
328545c7d8a1 largefiles: fix 'deleted' files sometimes persistently appearing with R status
Mads Kiilerich <madski@unity3d.com>
parents: 30190
diff changeset
   758
  ! largeX
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   759
  $ hg up -Cr .
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   760
  getting changed largefiles
30191
328545c7d8a1 largefiles: fix 'deleted' files sometimes persistently appearing with R status
Mads Kiilerich <madski@unity3d.com>
parents: 30190
diff changeset
   761
  2 largefiles updated, 0 removed
328545c7d8a1 largefiles: fix 'deleted' files sometimes persistently appearing with R status
Mads Kiilerich <madski@unity3d.com>
parents: 30190
diff changeset
   762
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
30190
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   763
  $ cat large1
56b930238036 largefiles: more safe handling of interruptions while updating modifications
Mads Kiilerich <madski@unity3d.com>
parents: 30189
diff changeset
   764
  manually modified before 'hg transplant --continue'
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   765
  $ hg st
30191
328545c7d8a1 largefiles: fix 'deleted' files sometimes persistently appearing with R status
Mads Kiilerich <madski@unity3d.com>
parents: 30190
diff changeset
   766
Force largefiles rehashing and check that all changes have been caught by
328545c7d8a1 largefiles: fix 'deleted' files sometimes persistently appearing with R status
Mads Kiilerich <madski@unity3d.com>
parents: 30190
diff changeset
   767
status and update:
30189
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   768
  $ rm .hg/largefiles/dirstate
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   769
  $ hg st
4999c12c526b largefiles: test coverage of fatal interruption of update
Mads Kiilerich <madski@unity3d.com>
parents: 28052
diff changeset
   770
22288
4e2559841d6c largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22287
diff changeset
   771
  $ cd ..
23276
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   772
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   773
Test that "hg convert" avoids copying largefiles from the working
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   774
directory into store, because "hg convert" doesn't update largefiles
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   775
in the working directory (removing files under ".cache/largefiles"
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   776
forces "hg convert" to copy corresponding largefiles)
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   777
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   778
  $ cat >> $HGRCPATH <<EOF
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   779
  > [extensions]
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   780
  > convert =
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   781
  > EOF
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   782
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   783
  $ rm $TESTTMP/.cache/largefiles/6a4f36d4075fbe0f30ec1d26ca44e63c05903671
4be754832829 largefiles: move "copyalltostore" invocation into "markcommitted"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23274
diff changeset
   784
  $ hg convert -q repo repo.converted