##// END OF EJS Templates
largefiles: restore standins from non branch-tip parent at rollback correctly...
largefiles: restore standins from non branch-tip parent at rollback correctly Before this patch, "hg rollback" can't restore standins correclty, if: - old parent of the working directory is rollback-ed, and - new parent of the working directory is not branch-tip "overriderollback" uses "merge.update" as a kind of "revert" utility to restore only standins with "node=None", and this makes "merge.update" choose "branch-tip" revision as the updating target unexpectedly. Then, "merge.update" restores standins from the branch-tip revision regardless of the parent of the working directory after rollback and this may cause unexpected behavior. This patch invokes "merge.update" with "node='.'" to restore standins from the parent revision of the working directory. In fact, this "merge.update" invocation will be replaced in the subsequent patch to fix another problem, but this change is usefull to inform reason why such complicated case should be tested.

File last commit:

r22152:d2a5986c default
r22284:72b37865 default
Show More
test-histedit-outgoing.t
147 lines | 3.9 KiB | text/troff | Tads3Lexer
/ tests / test-histedit-outgoing.t
Mads Kiilerich
tests: convert histedit tests to .t...
r17085 $ cat >> $HGRCPATH <<EOF
> [extensions]
> histedit=
> EOF
$ initrepos ()
> {
> hg init r
> cd r
> for x in a b c ; do
> echo $x > $x
> hg add $x
> hg ci -m $x
> done
> cd ..
> hg clone r r2 | grep -v updating
> cd r2
> for x in d e f ; do
> echo $x > $x
> hg add $x
> hg ci -m $x
> done
> cd ..
> hg init r3
> cd r3
> for x in g h i ; do
> echo $x > $x
> hg add $x
> hg ci -m $x
> done
> cd ..
> }
$ initrepos
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
show the edit commands offered by outgoing
$ cd r2
$ HGEDITOR=cat hg histedit --outgoing ../r | grep -v comparing | grep -v searching
pick 055a42cdd887 3 d
pick e860deea161a 4 e
pick 652413bf663e 5 f
# Edit history between 055a42cdd887 and 652413bf663e
#
Adrian Zgorzałek
histedit: clarify description of fold command...
r20503 # Commits are listed from least to most recent
#
Mads Kiilerich
tests: convert histedit tests to .t...
r17085 # Commands:
# p, pick = use commit
# e, edit = use commit, but stop for amending
Matt Mackall
histedit: shorten new fold message...
r20511 # f, fold = use commit, but combine it with the one above
Mike Edgar
histedit: add "roll" command to fold commit data and drop message (issue4256)...
r22152 # r, roll = like fold, but discard this commit's description
Mads Kiilerich
tests: convert histedit tests to .t...
r17085 # d, drop = remove commit from history
# m, mess = edit message without changing commit content
#
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd ..
show the error from unrelated repos
$ cd r3
$ HGEDITOR=cat hg histedit --outgoing ../r | grep -v comparing | grep -v searching
abort: repository is unrelated
[1]
$ cd ..
show the error from unrelated repos
$ cd r3
$ HGEDITOR=cat hg histedit --force --outgoing ../r
comparing with ../r
searching for changes
warning: repository is unrelated
pick 2a4042b45417 0 g
pick 68c46b4927ce 1 h
pick 51281e65ba79 2 i
# Edit history between 2a4042b45417 and 51281e65ba79
#
Adrian Zgorzałek
histedit: clarify description of fold command...
r20503 # Commits are listed from least to most recent
#
Mads Kiilerich
tests: convert histedit tests to .t...
r17085 # Commands:
# p, pick = use commit
# e, edit = use commit, but stop for amending
Matt Mackall
histedit: shorten new fold message...
r20511 # f, fold = use commit, but combine it with the one above
Mike Edgar
histedit: add "roll" command to fold commit data and drop message (issue4256)...
r22152 # r, roll = like fold, but discard this commit's description
Mads Kiilerich
tests: convert histedit tests to .t...
r17085 # d, drop = remove commit from history
# m, mess = edit message without changing commit content
#
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd ..
FUJIWARA Katsunori
histedit: make "hg histedit" sensitive to branch in URL...
r18995
test sensitivity to branch in URL:
$ cd r2
$ hg -q update 2
$ hg -q branch foo
$ hg commit -m 'create foo branch'
$ HGEDITOR=cat hg histedit --outgoing '../r#foo' | grep -v comparing | grep -v searching
pick f26599ee3441 6 create foo branch
# Edit history between f26599ee3441 and f26599ee3441
#
Adrian Zgorzałek
histedit: clarify description of fold command...
r20503 # Commits are listed from least to most recent
#
FUJIWARA Katsunori
histedit: make "hg histedit" sensitive to branch in URL...
r18995 # Commands:
# p, pick = use commit
# e, edit = use commit, but stop for amending
Matt Mackall
histedit: shorten new fold message...
r20511 # f, fold = use commit, but combine it with the one above
Mike Edgar
histedit: add "roll" command to fold commit data and drop message (issue4256)...
r22152 # r, roll = like fold, but discard this commit's description
FUJIWARA Katsunori
histedit: make "hg histedit" sensitive to branch in URL...
r18995 # d, drop = remove commit from history
# m, mess = edit message without changing commit content
#
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
FUJIWARA Katsunori
histedit: abort if there are multiple roots in "--outgoing" revisions...
r19835
test to check number of roots in outgoing revisions
$ hg -q outgoing -G --template '{node|short}({branch})' '../r'
@ f26599ee3441(foo)
o 652413bf663e(default)
|
o e860deea161a(default)
|
o 055a42cdd887(default)
$ HGEDITOR=cat hg -q histedit --outgoing '../r'
abort: there are ambiguous outgoing revisions
(see "hg help histedit" for more detail)
[255]
$ hg -q update -C 2
$ echo aa >> a
$ hg -q commit -m 'another head on default'
$ hg -q outgoing -G --template '{node|short}({branch})' '../r#default'
@ 3879dc049647(default)
o 652413bf663e(default)
|
o e860deea161a(default)
|
o 055a42cdd887(default)
$ HGEDITOR=cat hg -q histedit --outgoing '../r#default'
abort: there are ambiguous outgoing revisions
(see "hg help histedit" for more detail)
[255]
FUJIWARA Katsunori
histedit: make "hg histedit" sensitive to branch in URL...
r18995 $ cd ..