tests/test-lfconvert.t
author Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
Tue, 02 Jul 2019 12:59:58 -0400
changeset 42621 99ebde4fec99
parent 42565 4764e8436b2a
child 42893 34a46d48d24e
permissions -rw-r--r--
commit: improve the files field of changelog for merges Currently, the files list of merge commits repeats all the deletions (either actual deletions, or files that got renamed) that happened between base and p2 of the merge. If p2 is the main branch, the list can easily be much bigger than the change being merged. This results in various problems worth improving: - changelog is bigger than necessary - `hg log directory` lists many unrelated merge commits, and `hg log -v -r commit` frequently fills multiple screens worth of files - it possibly slows down adjustlinkrev, by forcing it to read more manifests, and that function can certainly be a bottleneck - the server side of pulls can waste a lot of time simply opening the filelogs for pointless files (the constant factors for opening even a tiny filelog is apparently pretty bad) So stop listing such files as described in the code. Impacted merge commits and their descendants get a different hash than they would have without this. This doesn't seem problematic, except for convert. The previous commit helped with that in the hg->hg case (but if you do svn->hg twice from scratch, hashes can still change). The rest of the description is numbers. I don't have much to report, because recreating the files list of existing repositories is not easy: - debugupgradeformat and bundle/unbundle don't recreate the list - export/import tends to choke quickly applying patches or on description that contain diffs, - merge commits from the convert extension don't have the right files list for reasons orthogonal to the current commit - replaying the merge with hg update/hg merge/hg revert --all/hg commit can end up failing in hg revert - I wasn't sure that using debugsetparents + debugrebuilddirstate would really build the right thing I measured commit time before and after this change, in a case with no files filtered out, several files filtered out (no difference) and 5k files filtered out (+1% time). Recreating the 100 more recent merges in a private repo, the concatenated uncompressed files lists goes from 1.12MB to 0.52MB. Excluding 3 merges that are not representative, then the size goes from 570k to 15k. I converted part of mozilla-central, and observed file list shrinking quite a bit too, starting at the very first merge, 733641d9feaf, going from 550 files to 10 files (although they have relatively few merges, so they probably wouldn't care). Differential Revision: https://phab.mercurial-scm.org/D6613
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
     1
  $ USERCACHE="$TESTTMP/cache"; export USERCACHE
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
     2
  $ mkdir "${USERCACHE}"
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     3
  $ cat >> $HGRCPATH <<EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     4
  > [extensions]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     5
  > largefiles =
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
     6
  > share =
20115
db6b958c4f35 tests: use strip extension instead of mq where it makes sense
Martin Geisler <martin@geisler.net>
parents: 19950
diff changeset
     7
  > strip =
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
     8
  > convert =
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     9
  > [largefiles]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    10
  > minsize = 0.5
15579
6c5e6ebe0812 largefiles: use "ui.configlist()" to get largefiles.patterns configuration
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 15389
diff changeset
    11
  > patterns = **.other
6c5e6ebe0812 largefiles: use "ui.configlist()" to get largefiles.patterns configuration
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 15389
diff changeset
    12
  >     **.dat
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
    13
  > usercache=${USERCACHE}
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    14
  > EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    15
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    16
"lfconvert" works
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    17
  $ hg init bigfile-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    18
  $ cd bigfile-repo
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    19
  $ cat >> .hg/hgrc <<EOF
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    20
  > [extensions]
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    21
  > largefiles = !
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    22
  > EOF
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    23
  $ mkdir sub
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    24
  $ dd if=/dev/zero bs=1k count=256 > large 2> /dev/null
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    25
  $ dd if=/dev/zero bs=1k count=256 > large2 2> /dev/null
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    26
  $ echo normal > normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    27
  $ echo alsonormal > sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    28
  $ dd if=/dev/zero bs=1k count=10 > sub/maybelarge.dat 2> /dev/null
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    29
  $ hg addremove
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    30
  adding large
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    31
  adding large2
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    32
  adding normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    33
  adding sub/maybelarge.dat
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    34
  adding sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    35
  $ hg commit -m"add large, normal1" large normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    36
  $ hg commit -m"add sub/*" sub
16908
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    37
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    38
Test tag parsing
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    39
  $ cat >> .hgtags <<EOF
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    40
  > IncorrectlyFormattedTag!
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    41
  > invalidhash sometag
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    42
  > 0123456789abcdef anothertag
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    43
  > EOF
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    44
  $ hg add .hgtags
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    45
  $ hg commit -m"add large2" large2 .hgtags
16908
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    46
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    47
Test link+rename largefile codepath
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    48
  $ [ -d .hg/largefiles ] && echo fail || echo pass
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    49
  pass
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    50
  $ cd ..
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    51
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    52
  initializing destination largefiles-repo
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    53
  skipping incorrectly formatted tag IncorrectlyFormattedTag!
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    54
  skipping incorrectly formatted id invalidhash
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    55
  no mapping for id 0123456789abcdef
16908
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    56
#if symlink
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    57
  $ hg --cwd bigfile-repo rename large2 large3
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    58
  $ ln -sf large bigfile-repo/large3
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    59
  $ hg --cwd bigfile-repo commit -m"make large2 a symlink" large2 large3
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    60
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo-symlink
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    61
  initializing destination largefiles-repo-symlink
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    62
  skipping incorrectly formatted tag IncorrectlyFormattedTag!
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    63
  skipping incorrectly formatted id invalidhash
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    64
  no mapping for id 0123456789abcdef
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    65
  abort: renamed/copied largefile large3 becomes symlink
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    66
  [255]
16908
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    67
#endif
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    68
  $ cd bigfile-repo
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    69
  $ hg strip --no-backup 2
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    70
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    71
  $ cd ..
16908
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    72
  $ rm -rf largefiles-repo largefiles-repo-symlink
6a997aacba5d tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16310
diff changeset
    73
15810
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    74
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo
3d11da212e30 largefiles: add tests for uncovered codepaths (issue3092)
Levi Bard <levi@unity3d.com>
parents: 15591
diff changeset
    75
  initializing destination largefiles-repo
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    76
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    77
"lfconvert" converts content correctly
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    78
  $ cd largefiles-repo
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    79
  $ hg up
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    80
  getting changed largefiles
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    81
  2 largefiles updated, 0 removed
18459
c9db897d5a43 largefiles: fix largefiles+subrepo update (issue3752)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 18356
diff changeset
    82
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    83
  $ hg locate
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    84
  .hglf/large
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    85
  .hglf/sub/maybelarge.dat
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    86
  normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    87
  sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    88
  $ cat normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    89
  normal
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    90
  $ cat sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    91
  alsonormal
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 25325
diff changeset
    92
  $ md5sum.py large sub/maybelarge.dat
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    93
  ec87a838931d4d5d2e94a04644788a55  large
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    94
  1276481102f218c981e0324180bafd9f  sub/maybelarge.dat
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    95
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    96
"lfconvert" adds 'largefiles' to .hg/requires.
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    97
  $ cat .hg/requires
18356
752f77ef7202 localrepo: store requirements sorted
Mads Kiilerich <mads@kiilerich.com>
parents: 18159
diff changeset
    98
  dotencode
752f77ef7202 localrepo: store requirements sorted
Mads Kiilerich <mads@kiilerich.com>
parents: 18159
diff changeset
    99
  fncache
26915
d92993d6210c test: using generaldelta in 'test-lfconvert.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26618
diff changeset
   100
  generaldelta
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   101
  largefiles
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   102
  revlogv1
40895
ed8e4748b9da test: enable sparse-revlog for test-lfconvert.t
Boris Feld <boris.feld@octobus.net>
parents: 40471
diff changeset
   103
  sparserevlog
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   104
  store
39113
e8532d00b729 tests: add conditional output when simplestore extensions is loaded
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37439
diff changeset
   105
  testonly-simplestore (reposimplestore !)
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   106
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   107
"lfconvert" includes a newline at the end of the standin files.
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   108
  $ cat .hglf/large .hglf/sub/maybelarge.dat
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   109
  2e000fa7e85759c7f4c254d4d9c33ef481e459a7
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   110
  34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   111
  $ cd ..
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   112
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   113
add some changesets to rename/remove/merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   114
  $ cd bigfile-repo
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   115
  $ hg mv -q sub stuff
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   116
  $ hg commit -m"rename sub/ to stuff/"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   117
  $ hg update -q 1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   118
  $ echo blah >> normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   119
  $ echo blah >> sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   120
  $ echo blah >> sub/maybelarge.dat
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 25325
diff changeset
   121
  $ md5sum.py sub/maybelarge.dat
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
   122
  1dd0b99ff80e19cff409702a1d3f5e15  sub/maybelarge.dat
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   123
  $ hg commit -A -m"add normal3, modify sub/*"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   124
  adding normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   125
  created new head
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   126
  $ hg rm large normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   127
  $ hg commit -q -m"remove large, normal3"
40471
844a40687d83 test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents: 40468
diff changeset
   128
  $ hg merge
40468
1f0c5c9a1765 test: drop usage of `HGMERGE` in `test-lfconvert.t`
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   129
  tool internal:merge (for pattern stuff/maybelarge.dat) can't handle binary
1f0c5c9a1765 test: drop usage of `HGMERGE` in `test-lfconvert.t`
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   130
  no tool found to merge stuff/maybelarge.dat
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41180
diff changeset
   131
  file 'stuff/maybelarge.dat' needs to be resolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41180
diff changeset
   132
  You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41180
diff changeset
   133
  What do you want to do? u
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   134
  merging sub/normal2 and stuff/normal2 to stuff/normal2
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   135
  0 files updated, 1 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
   136
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   137
  [1]
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   138
  $ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   139
  $ hg resolve -m stuff/maybelarge.dat
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21267
diff changeset
   140
  (no more unresolved files)
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   141
  $ hg commit -m"merge"
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 20115
diff changeset
   142
  $ hg log -G --template "{rev}:{node|short}  {desc|firstline}\n"
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   143
  @    5:4884f215abda  merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   144
  |\
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   145
  | o  4:7285f817b77e  remove large, normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   146
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   147
  | o  3:67e3892e3534  add normal3, modify sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   148
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   149
  o |  2:c96c8beb5d56  rename sub/ to stuff/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   150
  |/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   151
  o  1:020c65d24e11  add sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   152
  |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   153
  o  0:117b8328f97a  add large, normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   154
  
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   155
  $ cd ..
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   156
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   157
lfconvert with rename, merge, and remove
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   158
  $ rm -rf largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   159
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   160
  initializing destination largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   161
  $ cd largefiles-repo
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 20115
diff changeset
   162
  $ hg log -G --template "{rev}:{node|short}  {desc|firstline}\n"
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42565
diff changeset
   163
  o    5:9cc5aa7204f0  merge
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   164
  |\
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   165
  | o  4:a5a02de7a8e4  remove large, normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   166
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   167
  | o  3:55759520c76f  add normal3, modify sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   168
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   169
  o |  2:261ad3f3f037  rename sub/ to stuff/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   170
  |/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   171
  o  1:334e5237836d  add sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   172
  |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   173
  o  0:d4892ec57ce2  add large, normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   174
  
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   175
  $ hg locate -r 2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   176
  .hglf/large
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   177
  .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   178
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   179
  stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   180
  $ hg locate -r 3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   181
  .hglf/large
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   182
  .hglf/sub/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   183
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   184
  normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   185
  sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   186
  $ hg locate -r 4
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   187
  .hglf/sub/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   188
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   189
  sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   190
  $ hg locate -r 5
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   191
  .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   192
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   193
  stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   194
  $ hg update
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   195
  getting changed largefiles
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   196
  1 largefiles updated, 0 removed
18459
c9db897d5a43 largefiles: fix largefiles+subrepo update (issue3752)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 18356
diff changeset
   197
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   198
  $ cat stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   199
  alsonormal
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   200
  blah
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 25325
diff changeset
   201
  $ md5sum.py stuff/maybelarge.dat
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
   202
  1dd0b99ff80e19cff409702a1d3f5e15  stuff/maybelarge.dat
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   203
  $ cat .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   204
  76236b6a2c6102826c61af4297dd738fb3b1de38
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   205
  $ cd ..
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   206
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   207
"lfconvert" error cases
15340
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   208
  $ hg lfconvert http://localhost/foo foo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   209
  abort: http://localhost/foo is not a local Mercurial repo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   210
  [255]
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   211
  $ hg lfconvert foo ssh://localhost/foo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   212
  abort: ssh://localhost/foo is not a local Mercurial repo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   213
  [255]
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   214
  $ hg lfconvert nosuchrepo foo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   215
  abort: repository nosuchrepo not found!
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   216
  [255]
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   217
  $ hg share -q -U bigfile-repo shared
15364
572c22c88be6 tests: fix check-code detection of anchored expressions, fix echo -n usage
Matt Mackall <mpm@selenic.com>
parents: 15343
diff changeset
   218
  $ printf 'bogus' > shared/.hg/sharedpath
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   219
  $ hg lfconvert shared foo
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   220
  abort: .hg/sharedpath points to nonexistent directory $TESTTMP/bogus!
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   221
  [255]
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   222
  $ hg lfconvert bigfile-repo largefiles-repo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   223
  initializing destination largefiles-repo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   224
  abort: repository largefiles-repo already exists!
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   225
  [255]
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   226
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   227
add another largefile to the new largefiles repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   228
  $ cd largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   229
  $ dd if=/dev/zero bs=1k count=1k > anotherlarge 2> /dev/null
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   230
  $ hg add --lfsize=1 anotherlarge
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   231
  $ hg commit -m "add anotherlarge (should be a largefile)"
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   232
  $ cat .hglf/anotherlarge
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   233
  3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   234
  $ hg tag mytag
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   235
  $ cd ..
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   236
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   237
round-trip: converting back to a normal (non-largefiles) repo with
35036
281214150561 convert: avoid wrong lfconvert defaults by moving configitems to core
Matt Harbison <matt_harbison@yahoo.com>
parents: 34866
diff changeset
   238
"lfconvert --to-normal" should give the same as ../bigfile-repo.  The
281214150561 convert: avoid wrong lfconvert defaults by moving configitems to core
Matt Harbison <matt_harbison@yahoo.com>
parents: 34866
diff changeset
   239
convert extension is disabled to show config items can be loaded without it.
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   240
  $ cd largefiles-repo
35036
281214150561 convert: avoid wrong lfconvert defaults by moving configitems to core
Matt Harbison <matt_harbison@yahoo.com>
parents: 34866
diff changeset
   241
  $ hg --config extensions.convert=! lfconvert --to-normal . ../normal-repo
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   242
  initializing destination ../normal-repo
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   243
  0 additional largefiles cached
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   244
  scanning source...
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   245
  sorting...
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   246
  converting...
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   247
  7 add large, normal1
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   248
  6 add sub/*
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   249
  5 rename sub/ to stuff/
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   250
  4 add normal3, modify sub/*
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   251
  3 remove large, normal3
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   252
  2 merge
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   253
  1 add anotherlarge (should be a largefile)
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42565
diff changeset
   254
  0 Added tag mytag for changeset 17126745edfd
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   255
  $ cd ../normal-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   256
  $ cat >> .hg/hgrc <<EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   257
  > [extensions]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   258
  > largefiles = !
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   259
  > EOF
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   260
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 20115
diff changeset
   261
  $ hg log -G --template "{rev}:{node|short}  {desc|firstline}\n"
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   262
  o  7:b5fedc110b9d  Added tag mytag for changeset 867ab992ecf4
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   263
  |
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   264
  o  6:867ab992ecf4  add anotherlarge (should be a largefile)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   265
  |
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   266
  o    5:4884f215abda  merge
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   267
  |\
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   268
  | o  4:7285f817b77e  remove large, normal3
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   269
  | |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   270
  | o  3:67e3892e3534  add normal3, modify sub/*
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   271
  | |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   272
  o |  2:c96c8beb5d56  rename sub/ to stuff/
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   273
  |/
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   274
  o  1:020c65d24e11  add sub/*
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   275
  |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   276
  o  0:117b8328f97a  add large, normal1
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   277
  
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   278
  $ hg update
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   279
  5 files updated, 0 files merged, 0 files removed, 0 files unresolved
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   280
  $ hg locate
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   281
  .hgtags
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   282
  anotherlarge
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   283
  normal1
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   284
  stuff/maybelarge.dat
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   285
  stuff/normal2
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   286
  $ [ -d .hg/largefiles ] && echo fail || echo pass
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   287
  pass
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16908
diff changeset
   288
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16908
diff changeset
   289
  $ cd ..
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   290
17878
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   291
Clearing the usercache ensures that commitctx doesn't try to cache largefiles
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   292
from the working dir on a convert.
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   293
  $ rm "${USERCACHE}"/*
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   294
  $ hg convert largefiles-repo
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   295
  assuming destination largefiles-repo-hg
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   296
  initializing destination largefiles-repo-hg repository
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   297
  scanning source...
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   298
  sorting...
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   299
  converting...
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   300
  7 add large, normal1
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   301
  6 add sub/*
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   302
  5 rename sub/ to stuff/
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   303
  4 add normal3, modify sub/*
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   304
  3 remove large, normal3
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   305
  2 merge
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   306
  1 add anotherlarge (should be a largefile)
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42565
diff changeset
   307
  0 Added tag mytag for changeset 17126745edfd
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   308
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 20115
diff changeset
   309
  $ hg -R largefiles-repo-hg log -G --template "{rev}:{node|short}  {desc|firstline}\n"
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   310
  o  7:2f08f66459b7  Added tag mytag for changeset 17126745edfd
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   311
  |
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   312
  o  6:17126745edfd  add anotherlarge (should be a largefile)
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   313
  |
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   314
  o    5:9cc5aa7204f0  merge
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   315
  |\
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   316
  | o  4:a5a02de7a8e4  remove large, normal3
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   317
  | |
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   318
  | o  3:55759520c76f  add normal3, modify sub/*
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   319
  | |
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   320
  o |  2:261ad3f3f037  rename sub/ to stuff/
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   321
  |/
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   322
  o  1:334e5237836d  add sub/*
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   323
  |
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   324
  o  0:d4892ec57ce2  add large, normal1
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   325
  
17878
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   326
Verify will fail (for now) if the usercache is purged before converting, since
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   327
largefiles are not cached in the converted repo's local store by the conversion
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   328
process.
25508
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   329
  $ cd largefiles-repo-hg
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   330
  $ cat >> .hg/hgrc <<EOF
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   331
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34198
diff changeset
   332
  > evolution.createmarkers=True
25508
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   333
  > EOF
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   334
  $ hg debugobsolete `hg log -r tip -T "{node}"`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 26915
diff changeset
   335
  obsoleted 1 changesets
25508
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   336
  $ cd ..
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   337
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   338
  $ hg -R largefiles-repo-hg verify --large --lfa
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   339
  checking changesets
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   340
  checking manifests
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   341
  crosschecking files in changesets and manifests
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   342
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 39113
diff changeset
   343
  checked 8 changesets with 13 changes to 9 files
25508
b8fd605b0c88 largefiles: ignore hidden changesets with 'verify --large --lfa'
Matt Harbison <matt_harbison@yahoo.com>
parents: 25472
diff changeset
   344
  searching 7 changesets for largefiles
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   345
  changeset 0:d4892ec57ce2: large references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/2e000fa7e85759c7f4c254d4d9c33ef481e459a7
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   346
  changeset 1:334e5237836d: sub/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   347
  changeset 2:261ad3f3f037: stuff/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   348
  changeset 3:55759520c76f: sub/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/76236b6a2c6102826c61af4297dd738fb3b1de38
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   349
  changeset 5:9cc5aa7204f0: stuff/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/76236b6a2c6102826c61af4297dd738fb3b1de38
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35036
diff changeset
   350
  changeset 6:17126745edfd: anotherlarge references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   351
  verified existence of 6 revisions of 4 largefiles
17878
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   352
  [1]
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   353
  $ hg -R largefiles-repo-hg showconfig paths
22316
816be4ca4ae2 config: exit non zero on non-existent config option (issue4247)
Aaron Kushner <akushner@fb.com>
parents: 21947
diff changeset
   354
  [1]
17877
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   355
92bbb21d4b13 largefiles: respect the rev when reading standins in copytostore() (issue3630)
Matt Harbison <matt_harbison@yahoo.com>
parents: 17824
diff changeset
   356
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   357
Avoid a traceback if a largefile isn't available (issue3519)
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   358
17824
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   359
Ensure the largefile can be cached in the source if necessary
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   360
  $ hg clone -U largefiles-repo issue3519
17878
d1d0140287b8 largefiles: don't copy largefiles from working dir to the store while converting
Matt Harbison <matt_harbison@yahoo.com>
parents: 17877
diff changeset
   361
  $ rm -f "${USERCACHE}"/*
41180
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   362
  $ hg -R issue3519 branch -q mybranch
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   363
  $ hg -R issue3519 ci -m 'change branch name only'
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   364
  $ hg lfconvert --to-normal issue3519 normalized3519
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   365
  initializing destination normalized3519
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   366
  4 additional largefiles cached
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   367
  scanning source...
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   368
  sorting...
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   369
  converting...
41180
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   370
  8 add large, normal1
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   371
  7 add sub/*
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   372
  6 rename sub/ to stuff/
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   373
  5 add normal3, modify sub/*
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   374
  4 remove large, normal3
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   375
  3 merge
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   376
  2 add anotherlarge (should be a largefile)
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42565
diff changeset
   377
  1 Added tag mytag for changeset 17126745edfd
41180
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   378
  0 change branch name only
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   379
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   380
Ensure empty commits aren't lost in the conversion
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   381
  $ hg -R normalized3519 log -r tip -T '{desc}\n'
69804c040a04 convert: don't drop commits that are empty in the source when using --filemap
Matt Harbison <matt_harbison@yahoo.com>
parents: 40919
diff changeset
   382
  change branch name only
17824
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   383
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   384
Ensure the abort message is useful if a largefile is entirely unavailable
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   385
  $ rm -rf normalized3519
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   386
  $ rm "${USERCACHE}"/*
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   387
  $ rm issue3519/.hg/largefiles/*
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   388
  $ rm largefiles-repo/.hg/largefiles/*
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   389
  $ hg lfconvert --to-normal issue3519 normalized3519
221c9c3146eb largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com>
parents: 17823
diff changeset
   390
  initializing destination normalized3519
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   391
  anotherlarge: largefile 3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   392
  stuff/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   393
  stuff/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   394
  sub/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)
20471
ea005e754c9c tests: lines with largefile .* file://$TESTTMP also match on windows
Simon Heimberg <simohe@besonet.ch>
parents: 20117
diff changeset
   395
  large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)
25325
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   396
  sub/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   397
  large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   398
  stuff/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   399
  large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   400
  sub/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   401
  large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   402
  0 additional largefiles cached
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   403
  11 largefiles failed to download
fcd2f9b06629 largefiles: use the convert extension for 'lfconvert --to-normal'
Matt Harbison <matt_harbison@yahoo.com>
parents: 22316
diff changeset
   404
  abort: all largefiles must be present locally
17823
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   405
  [255]
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   406
0fc1ce271ee6 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   407