These changes are no longer necessary so we better drop them.
Details
Details
Diff Detail
Diff Detail
- Repository
- rHG Mercurial
- Lint
Lint Skipped - Unit
Unit Tests Skipped
hg-reviewers |
These changes are no longer necessary so we better drop them.
Lint Skipped |
Unit Tests Skipped |
Path | Packages | |||
---|---|---|---|---|
M | tests/test-largefiles-update.t (1 line) | |||
M | tests/test-lfconvert.t (2 lines) | |||
M | tests/test-merge-types.t (27 lines) |
Commit | Parents | Author | Summary | Date |
---|---|---|---|---|
Boris Feld | Nov 1 2018, 9:35 AM |
#require no-reposimplestore | #require no-reposimplestore | ||||
This file focuses mainly on updating largefiles in the working | This file focuses mainly on updating largefiles in the working | ||||
directory (and ".hg/largefiles/dirstate") | directory (and ".hg/largefiles/dirstate") | ||||
$ unset HGMERGE | |||||
$ cat >> $HGRCPATH <<EOF | $ cat >> $HGRCPATH <<EOF | ||||
> [ui] | > [ui] | ||||
> merge = internal:merge | > merge = internal:merge | ||||
> [extensions] | > [extensions] | ||||
> largefiles = | > largefiles = | ||||
> [extdiff] | > [extdiff] | ||||
> # for portability: | > # for portability: | ||||
> pdiff = sh "$RUNTESTDIR/pdiff" | > pdiff = sh "$RUNTESTDIR/pdiff" |
$ echo blah >> sub/maybelarge.dat | $ echo blah >> sub/maybelarge.dat | ||||
$ md5sum.py sub/maybelarge.dat | $ md5sum.py sub/maybelarge.dat | ||||
1dd0b99ff80e19cff409702a1d3f5e15 sub/maybelarge.dat | 1dd0b99ff80e19cff409702a1d3f5e15 sub/maybelarge.dat | ||||
$ hg commit -A -m"add normal3, modify sub/*" | $ hg commit -A -m"add normal3, modify sub/*" | ||||
adding normal3 | adding normal3 | ||||
created new head | created new head | ||||
$ hg rm large normal3 | $ hg rm large normal3 | ||||
$ hg commit -q -m"remove large, normal3" | $ hg commit -q -m"remove large, normal3" | ||||
$ HGMERGE= hg merge --config ui.merge=internal:merge | $ hg merge | ||||
tool internal:merge (for pattern stuff/maybelarge.dat) can't handle binary | tool internal:merge (for pattern stuff/maybelarge.dat) can't handle binary | ||||
no tool found to merge stuff/maybelarge.dat | no tool found to merge stuff/maybelarge.dat | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for stuff/maybelarge.dat? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for stuff/maybelarge.dat? u | ||||
merging sub/normal2 and stuff/normal2 to stuff/normal2 | merging sub/normal2 and stuff/normal2 to stuff/normal2 | ||||
0 files updated, 1 files merged, 0 files removed, 1 files unresolved | 0 files updated, 1 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat | $ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat |
#require symlink execbit | #require symlink execbit | ||||
$ unset HGMERGE | |||||
$ cat >> $HGRCPATH << EOF | |||||
> [ui] | |||||
> merge=:merge | |||||
> EOF | |||||
$ tellmeabout() { | $ tellmeabout() { | ||||
> if [ -h $1 ]; then | > if [ -h $1 ]; then | ||||
> echo $1 is a symlink: | > echo $1 is a symlink: | ||||
> $TESTDIR/readlink.py $1 | > $TESTDIR/readlink.py $1 | ||||
> elif [ -x $1 ]; then | > elif [ -x $1 ]; then | ||||
> echo $1 is an executable file with content: | > echo $1 is an executable file with content: | ||||
> cat $1 | > cat $1 | ||||
> else | > else | ||||
$ hg merge --debug | $ hg merge --debug | ||||
searching for copies back to rev 1 | searching for copies back to rev 1 | ||||
resolving manifests | resolving manifests | ||||
branchmerge: True, force: False, partial: False | branchmerge: True, force: False, partial: False | ||||
ancestor: c334dc3be0da, local: 521a1e40188f+, remote: 3574f3e69b1c | ancestor: c334dc3be0da, local: 521a1e40188f+, remote: 3574f3e69b1c | ||||
preserving a for resolve of a | preserving a for resolve of a | ||||
a: versions differ -> m (premerge) | a: versions differ -> m (premerge) | ||||
tool :merge (for pattern a) can't handle symlinks | tool internal:merge (for pattern a) can't handle symlinks | ||||
couldn't find merge tool hgmerge | couldn't find merge tool hgmerge | ||||
no tool found to merge a | no tool found to merge a | ||||
picked tool ':prompt' for a (binary False symlink True changedelete False) | picked tool ':prompt' for a (binary False symlink True changedelete False) | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for a? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for a? u | ||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ echo file > f | $ echo file > f | ||||
$ echo content >> f | $ echo content >> f | ||||
$ hg ci -qm1 | $ hg ci -qm1 | ||||
$ hg up -qr0 | $ hg up -qr0 | ||||
$ rm f | $ rm f | ||||
$ ln -s base f | $ ln -s base f | ||||
$ hg ci -qm2 | $ hg ci -qm2 | ||||
$ hg merge | $ hg merge | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ tellmeabout f | $ tellmeabout f | ||||
f is a symlink: | f is a symlink: | ||||
f -> base | f -> base | ||||
$ hg up -Cqr1 | $ hg up -Cqr1 | ||||
$ hg merge | $ hg merge | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ tellmeabout f | $ tellmeabout f | ||||
f is a plain file with content: | f is a plain file with content: | ||||
file | file | ||||
$ hg ci -Aqm0 | $ hg ci -Aqm0 | ||||
$ chmod -x f | $ chmod -x f | ||||
$ hg ci -qm1 | $ hg ci -qm1 | ||||
$ hg up -qr0 | $ hg up -qr0 | ||||
$ rm f | $ rm f | ||||
$ ln -s dangling f | $ ln -s dangling f | ||||
$ hg ci -qm2 | $ hg ci -qm2 | ||||
$ hg merge | $ hg merge | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ tellmeabout f | $ tellmeabout f | ||||
f is a symlink: | f is a symlink: | ||||
f -> dangling | f -> dangling | ||||
$ hg up -Cqr1 | $ hg up -Cqr1 | ||||
$ hg merge | $ hg merge | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ tellmeabout f | $ tellmeabout f | ||||
f is a plain file with content: | f is a plain file with content: | ||||
f | f | ||||
$ hg ci -Aqm2 | $ hg ci -Aqm2 | ||||
$ hg merge | $ hg merge | ||||
merging a | merging a | ||||
warning: cannot merge flags for b without common ancestor - keeping local flags | warning: cannot merge flags for b without common ancestor - keeping local flags | ||||
merging b | merging b | ||||
merging bx | merging bx | ||||
warning: cannot merge flags for c without common ancestor - keeping local flags | warning: cannot merge flags for c without common ancestor - keeping local flags | ||||
tool :merge (for pattern d) can't handle symlinks | tool internal:merge (for pattern d) can't handle symlinks | ||||
no tool found to merge d | no tool found to merge d | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for d? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for d? u | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
tool :merge (for pattern h) can't handle symlinks | tool internal:merge (for pattern h) can't handle symlinks | ||||
no tool found to merge h | no tool found to merge h | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for h? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for h? u | ||||
warning: conflicts while merging a! (edit, then use 'hg resolve --mark') | warning: conflicts while merging a! (edit, then use 'hg resolve --mark') | ||||
warning: conflicts while merging b! (edit, then use 'hg resolve --mark') | warning: conflicts while merging b! (edit, then use 'hg resolve --mark') | ||||
warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') | warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') | ||||
3 files updated, 0 files merged, 0 files removed, 6 files unresolved | 3 files updated, 0 files merged, 0 files removed, 6 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] | ||||
$ hg up -Cqr1 | $ hg up -Cqr1 | ||||
$ hg merge | $ hg merge | ||||
merging a | merging a | ||||
warning: cannot merge flags for b without common ancestor - keeping local flags | warning: cannot merge flags for b without common ancestor - keeping local flags | ||||
merging b | merging b | ||||
merging bx | merging bx | ||||
warning: cannot merge flags for c without common ancestor - keeping local flags | warning: cannot merge flags for c without common ancestor - keeping local flags | ||||
tool :merge (for pattern d) can't handle symlinks | tool internal:merge (for pattern d) can't handle symlinks | ||||
no tool found to merge d | no tool found to merge d | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for d? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for d? u | ||||
tool :merge (for pattern f) can't handle symlinks | tool internal:merge (for pattern f) can't handle symlinks | ||||
no tool found to merge f | no tool found to merge f | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u | ||||
tool :merge (for pattern h) can't handle symlinks | tool internal:merge (for pattern h) can't handle symlinks | ||||
no tool found to merge h | no tool found to merge h | ||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for h? u | keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for h? u | ||||
warning: conflicts while merging a! (edit, then use 'hg resolve --mark') | warning: conflicts while merging a! (edit, then use 'hg resolve --mark') | ||||
warning: conflicts while merging b! (edit, then use 'hg resolve --mark') | warning: conflicts while merging b! (edit, then use 'hg resolve --mark') | ||||
warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') | warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') | ||||
3 files updated, 0 files merged, 0 files removed, 6 files unresolved | 3 files updated, 0 files merged, 0 files removed, 6 files unresolved | ||||
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||||
[1] | [1] |