##// END OF EJS Templates
ui: add new config option for help text width...
ui: add new config option for help text width Before this patch, when printing help text using `hg help`, or `hg log -h`, the output will wrap at 78 chars even if the user has a bigger terminal width and there is no config option to change it, making the experience different from the commonly used `man` tool. This patch introduces a new config option `ui.textwidth`, which replaces the hardcoded number. It's set to 78 by default to maintain compatibility. When set to 0, `hg help` will behave more like `man`.

File last commit:

r23675:96529f81 default
r29070:29a7d591 default
Show More
test-convert-cvs-detectmerge.t
234 lines | 5.2 KiB | text/troff | Tads3Lexer
/ tests / test-convert-cvs-detectmerge.t
Matt Mackall
tests: replace exit 80 with #require
r22046 #require cvs
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 Test config convert.cvsps.mergefrom config setting.
(Should test similar mergeto feature, but I don't understand it yet.)
Requires builtin cvsps.
$ CVSROOT=`pwd`/cvsrepo
$ export CVSROOT
$ cvscall()
> {
> cvs -f "$@"
> }
output of 'cvs ci' varies unpredictably, so just discard it
XXX copied from test-convert-cvs-synthetic
$ cvsci()
> {
Matt Mackall
tests: fix up date ambiguity in cvs test
r14569 > sleep 1
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 > cvs -f ci "$@" > /dev/null
> }
XXX copied from test-convert-cvs-synthetic
Yuya Nishihara
tests: write hgrc of more than two lines by using shell heredoc...
r23172 $ cat <<EOF >> $HGRCPATH
> [extensions]
> convert =
> [convert]
> cvsps.cache = 0
> cvsps.mergefrom = \[MERGE from (\S+)\]
> EOF
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521
create cvs repository with one project
$ cvscall -q -d "$CVSROOT" init
$ mkdir cvsrepo/proj
populate cvs repository
$ cvscall -Q co proj
$ cd proj
$ touch file1
$ cvscall -Q add file1
$ cvsci -m"add file1 on trunk"
cvs commit: Examining .
create two release branches
$ cvscall -q tag -b v1_0
T file1
$ cvscall -q tag -b v1_1
T file1
modify file1 on branch v1_0
$ cvscall -Q update -rv1_0
Mads Kiilerich
tests: restore previous fix for date ambiguity in cvs test...
r14824 $ sleep 1
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 $ echo "change" >> file1
$ cvsci -m"add text"
cvs commit: Examining .
make unrelated change on v1_1
$ cvscall -Q update -rv1_1
$ touch unrelated
$ cvscall -Q add unrelated
$ cvsci -m"unrelated change"
cvs commit: Examining .
merge file1 to v1_1
$ cvscall -Q update -jv1_0
Mads Kiilerich
tests: remove redundant globs...
r12640 RCS file: $TESTTMP/cvsrepo/proj/file1,v
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 retrieving revision 1.1
retrieving revision 1.1.2.1
Merging differences between 1.1 and 1.1.2.1 into file1
$ cvsci -m"add text [MERGE from v1_0]"
cvs commit: Examining .
merge change to trunk
$ cvscall -Q update -A
$ cvscall -Q update -jv1_1
Mads Kiilerich
tests: remove redundant globs...
r12640 RCS file: $TESTTMP/cvsrepo/proj/file1,v
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 retrieving revision 1.1
retrieving revision 1.1.4.1
Merging differences between 1.1 and 1.1.4.1 into file1
$ cvsci -m"add text [MERGE from v1_1]"
cvs commit: Examining .
non-merged change on trunk
$ echo "foo" > file2
$ cvscall -Q add file2
$ cvsci -m"add file2 on trunk" file2
this will create rev 1.3
change on trunk to backport
$ echo "backport me" >> file1
$ cvsci -m"add other text" file1
$ cvscall log file1
Mads Kiilerich
tests: remove redundant globs...
r12640 RCS file: $TESTTMP/cvsrepo/proj/file1,v
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 Working file: file1
head: 1.3
branch:
locks: strict
access list:
symbolic names:
v1_1: 1.1.0.4
v1_0: 1.1.0.2
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
----------------------------
revision 1.3
date: * (glob)
add other text
----------------------------
revision 1.2
date: * (glob)
add text [MERGE from v1_1]
----------------------------
revision 1.1
date: * (glob)
branches: 1.1.2; 1.1.4;
add file1 on trunk
----------------------------
revision 1.1.4.1
date: * (glob)
add text [MERGE from v1_0]
----------------------------
revision 1.1.2.1
date: * (glob)
add text
=============================================================================
XXX how many ways are there to spell "trunk" with CVS?
backport trunk change to v1_1
$ cvscall -Q update -rv1_1
$ cvscall -Q update -j1.2 -j1.3 file1
Mads Kiilerich
tests: remove redundant globs...
r12640 RCS file: $TESTTMP/cvsrepo/proj/file1,v
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 retrieving revision 1.2
retrieving revision 1.3
Merging differences between 1.2 and 1.3 into file1
$ cvsci -m"add other text [MERGE from HEAD]" file1
fix bug on v1_1, merge to trunk with error
$ cvscall -Q update -rv1_1
$ echo "merge forward" >> file1
$ cvscall -Q tag unmerged
$ cvsci -m"fix file1"
cvs commit: Examining .
$ cvscall -Q update -A
$ cvscall -Q update -junmerged -jv1_1
Mads Kiilerich
tests: remove redundant globs...
r12640 RCS file: $TESTTMP/cvsrepo/proj/file1,v
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 retrieving revision 1.1.4.2
retrieving revision 1.1.4.3
Merging differences between 1.1.4.2 and 1.1.4.3 into file1
note the typo in the commit log message
$ cvsci -m"fix file1 [MERGE from v1-1]"
cvs commit: Examining .
$ cvs -Q tag -d unmerged
convert to hg
$ cd ..
$ hg convert proj proj.hg
initializing destination proj.hg repository
Mads Kiilerich
tests: remove redundant globs...
r12640 connecting to $TESTTMP/cvsrepo
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 scanning source...
collecting CVS rlog
12 log entries
creating changesets
warning: CVS commit message references non-existent branch 'v1-1':
fix file1 [MERGE from v1-1]
10 changeset entries
sorting...
converting...
9 add file1 on trunk
Mads Kiilerich
convert: make toposort order stable when multiple orderings are possible...
r18376 8 unrelated change
7 add text
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 6 add text [MERGE from v1_0]
5 add text [MERGE from v1_1]
4 add file2 on trunk
3 add other text
2 add other text [MERGE from HEAD]
1 fix file1
0 fix file1 [MERGE from v1-1]
complete log
$ template="{rev}: '{branches}' {desc}\n"
$ hg -R proj.hg log --template="$template"
9: '' fix file1 [MERGE from v1-1]
8: 'v1_1' fix file1
7: 'v1_1' add other text [MERGE from HEAD]
6: '' add other text
5: '' add file2 on trunk
4: '' add text [MERGE from v1_1]
3: 'v1_1' add text [MERGE from v1_0]
Mads Kiilerich
convert: make toposort order stable when multiple orderings are possible...
r18376 2: 'v1_0' add text
1: 'v1_1' unrelated change
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 0: '' add file1 on trunk
graphical log
Martin Geisler
tests: don't load unnecessary graphlog extension...
r20117 $ hg -R proj.hg log -G --template="$template"
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 o 9: '' fix file1 [MERGE from v1-1]
|
| o 8: 'v1_1' fix file1
| |
| o 7: 'v1_1' add other text [MERGE from HEAD]
|/|
o | 6: '' add other text
| |
o | 5: '' add file2 on trunk
| |
o | 4: '' add text [MERGE from v1_1]
|\|
| o 3: 'v1_1' add text [MERGE from v1_0]
| |\
Mads Kiilerich
convert: make toposort order stable when multiple orderings are possible...
r18376 +---o 2: 'v1_0' add text
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 | |
Mads Kiilerich
convert: make toposort order stable when multiple orderings are possible...
r18376 | o 1: 'v1_1' unrelated change
Matt Mackall
tests: unify test-convert-cvs-detectmerge
r12521 |/
o 0: '' add file1 on trunk