test-qrecord.t
473 lines
| 10.3 KiB
| text/troff
|
Tads3Lexer
/ tests / test-qrecord.t
|
r12075 | Create configuration | ||
$ echo "[ui]" >> $HGRCPATH | ||||
$ echo "interactive=true" >> $HGRCPATH | ||||
|
r13935 | |||
help record (no record) | ||||
$ hg help record | ||||
|
r16854 | record extension - commands to interactively select changes for | ||
|
r28697 | commit/qrefresh (DEPRECATED) | ||
|
r13935 | |||
|
r30306 | The feature provided by this extension has been moved into core Mercurial as | ||
'hg commit --interactive'. | ||||
|
r29974 | (use 'hg help extensions' for information on enabling extensions) | ||
|
r13935 | |||
|
r13936 | help qrecord (no record) | ||
$ hg help qrecord | ||||
'qrecord' is provided by the following extension: | ||||
|
r15861 | record commands to interactively select changes for commit/qrefresh | ||
|
r28697 | (DEPRECATED) | ||
|
r13936 | |||
|
r29974 | (use 'hg help extensions' for information on enabling extensions) | ||
|
r13936 | |||
|
r12075 | $ echo "[extensions]" >> $HGRCPATH | ||
$ echo "record=" >> $HGRCPATH | ||||
|
r13935 | help record (record) | ||
$ hg help record | ||||
hg record [OPTION]... [FILE]... | ||||
interactively select changes to commit | ||||
|
r27729 | If a list of files is omitted, all changes reported by 'hg status' will be | ||
|
r13935 | candidates for recording. | ||
|
r27729 | See 'hg help dates' for a list of formats valid for -d/--date. | ||
|
r13935 | |||
|
r31065 | If using the text interface (see 'hg help config'), you will be prompted | ||
for whether to record changes to each modified file, and for files with | ||||
multiple changes, for each change to use. For each query, the following | ||||
responses are possible: | ||||
|
r13935 | |||
y - record this change | ||||
n - skip this change | ||||
|
r16324 | e - edit this change manually | ||
|
r13935 | |||
s - skip remaining changes to this file | ||||
f - record remaining changes to this file | ||||
d - done, skip remaining changes and files | ||||
a - record all changes to all remaining files | ||||
q - quit, recording no changes | ||||
? - display help | ||||
This command is not available when committing a merge. | ||||
|
r29974 | (use 'hg help -e record' to show help for the record extension) | ||
|
r28697 | |||
|
r22117 | options ([+] can be repeated): | ||
|
r13935 | |||
|
r30152 | -A --addremove mark new/missing files as added/removed before | ||
committing | ||||
--close-branch mark a branch head as closed | ||||
--amend amend the parent of the working directory | ||||
-s --secret use the secret phase for committing | ||||
-e --edit invoke editor on commit messages | ||||
-I --include PATTERN [+] include names matching the given patterns | ||||
-X --exclude PATTERN [+] exclude names matching the given patterns | ||||
-m --message TEXT use text as commit message | ||||
-l --logfile FILE read commit message from file | ||||
-d --date DATE record the specified date as commit date | ||||
-u --user USER record the specified user as committer | ||||
-S --subrepos recurse into subrepositories | ||||
-w --ignore-all-space ignore white space when comparing lines | ||||
-b --ignore-space-change ignore changes in the amount of white space | ||||
-B --ignore-blank-lines ignore changes whose lines are all blank | ||||
|
r34015 | -Z --ignore-space-at-eol ignore changes in whitespace at EOL | ||
|
r13935 | |||
|
r22110 | (some details hidden, use --verbose to show complete help) | ||
|
r13935 | |||
|
r12075 | help (no mq, so no qrecord) | ||
$ hg help qrecord | ||||
|
r13936 | hg qrecord [OPTION]... PATCH [FILE]... | ||
|
r12075 | |||
|
r13936 | interactively record a new patch | ||
|
r27729 | See 'hg help qnew' & 'hg help record' for more information and usage. | ||
|
r12075 | |||
|
r22110 | (some details hidden, use --verbose to show complete help) | ||
|
r13936 | |||
$ hg init a | ||||
qrecord (mq not present) | ||||
$ hg -R a qrecord | ||||
hg qrecord: invalid arguments | ||||
hg qrecord [OPTION]... PATCH [FILE]... | ||||
|
r12075 | |||
|
r13936 | interactively record a new patch | ||
|
r29974 | (use 'hg qrecord -h' to show more help) | ||
|
r13936 | [255] | ||
qrecord patch (mq not present) | ||||
$ hg -R a qrecord patch | ||||
abort: 'mq' extension not loaded | ||||
|
r12316 | [255] | ||
|
r12075 | |||
|
r14415 | help (bad mq) | ||
|
r17492 | $ echo "mq=nonexistent" >> $HGRCPATH | ||
|
r14415 | $ hg help qrecord | ||
|
r18028 | *** failed to import extension mq from nonexistent: [Errno *] * (glob) | ||
|
r14415 | hg qrecord [OPTION]... PATCH [FILE]... | ||
interactively record a new patch | ||||
|
r27729 | See 'hg help qnew' & 'hg help record' for more information and usage. | ||
|
r14415 | |||
|
r22110 | (some details hidden, use --verbose to show complete help) | ||
|
r14415 | |||
|
r12075 | help (mq present) | ||
|
r17492 | $ sed 's/mq=nonexistent/mq=/' $HGRCPATH > hgrc.tmp | ||
|
r14415 | $ mv hgrc.tmp $HGRCPATH | ||
|
r12075 | $ hg help qrecord | ||
hg qrecord [OPTION]... PATCH [FILE]... | ||||
interactively record a new patch | ||||
|
r27729 | See 'hg help qnew' & 'hg help record' for more information and usage. | ||
|
r12075 | |||
|
r22117 | options ([+] can be repeated): | ||
|
r12075 | |||
|
r30152 | -e --edit invoke editor on commit messages | ||
-g --git use git extended diff format | ||||
-U --currentuser add "From: <current user>" to patch | ||||
-u --user USER add "From: <USER>" to patch | ||||
-D --currentdate add "Date: <current date>" to patch | ||||
-d --date DATE add "Date: <DATE>" to patch | ||||
-I --include PATTERN [+] include names matching the given patterns | ||||
-X --exclude PATTERN [+] exclude names matching the given patterns | ||||
-m --message TEXT use text as commit message | ||||
-l --logfile FILE read commit message from file | ||||
-w --ignore-all-space ignore white space when comparing lines | ||||
-b --ignore-space-change ignore changes in the amount of white space | ||||
-B --ignore-blank-lines ignore changes whose lines are all blank | ||||
|
r34015 | -Z --ignore-space-at-eol ignore changes in whitespace at EOL | ||
|
r30152 | --mq operate on patch repository | ||
|
r12075 | |||
|
r22110 | (some details hidden, use --verbose to show complete help) | ||
|
r12075 | |||
$ cd a | ||||
Base commit | ||||
$ cat > 1.txt <<EOF | ||||
> 1 | ||||
> 2 | ||||
> 3 | ||||
> 4 | ||||
> 5 | ||||
> EOF | ||||
$ cat > 2.txt <<EOF | ||||
> a | ||||
> b | ||||
> c | ||||
> d | ||||
> e | ||||
> f | ||||
> EOF | ||||
$ mkdir dir | ||||
$ cat > dir/a.txt <<EOF | ||||
> hello world | ||||
> | ||||
> someone | ||||
> up | ||||
> there | ||||
> loves | ||||
> me | ||||
> EOF | ||||
$ hg add 1.txt 2.txt dir/a.txt | ||||
$ hg commit -m 'initial checkin' | ||||
Changing files | ||||
$ sed -e 's/2/2 2/;s/4/4 4/' 1.txt > 1.txt.new | ||||
$ sed -e 's/b/b b/' 2.txt > 2.txt.new | ||||
$ sed -e 's/hello world/hello world!/' dir/a.txt > dir/a.txt.new | ||||
$ mv -f 1.txt.new 1.txt | ||||
$ mv -f 2.txt.new 2.txt | ||||
$ mv -f dir/a.txt.new dir/a.txt | ||||
Whole diff | ||||
$ hg diff --nodates | ||||
diff -r 1057167b20ef 1.txt | ||||
--- a/1.txt | ||||
+++ b/1.txt | ||||
@@ -1,5 +1,5 @@ | ||||
1 | ||||
-2 | ||||
+2 2 | ||||
3 | ||||
-4 | ||||
+4 4 | ||||
5 | ||||
diff -r 1057167b20ef 2.txt | ||||
--- a/2.txt | ||||
+++ b/2.txt | ||||
@@ -1,5 +1,5 @@ | ||||
a | ||||
-b | ||||
+b b | ||||
c | ||||
d | ||||
e | ||||
diff -r 1057167b20ef dir/a.txt | ||||
--- a/dir/a.txt | ||||
+++ b/dir/a.txt | ||||
@@ -1,4 +1,4 @@ | ||||
-hello world | ||||
+hello world! | ||||
someone | ||||
up | ||||
|
r14424 | qrecord with bad patch name, should abort before prompting | ||
$ hg qrecord .hg | ||||
abort: patch name cannot begin with ".hg" | ||||
[255] | ||||
|
r31556 | $ hg qrecord ' foo' | ||
abort: patch name cannot begin or end with whitespace | ||||
[255] | ||||
$ hg qrecord 'foo ' | ||||
abort: patch name cannot begin or end with whitespace | ||||
[255] | ||||
|
r14424 | |||
|
r12075 | qrecord a.patch | ||
$ hg qrecord -d '0 0' -m aaa a.patch <<EOF | ||||
> y | ||||
> y | ||||
> n | ||||
> y | ||||
> y | ||||
> n | ||||
> EOF | ||||
diff --git a/1.txt b/1.txt | ||||
2 hunks, 2 lines changed | ||||
|
r42766 | examine changes to '1.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | @@ -1,3 +1,3 @@ | ||
1 | ||||
-2 | ||||
+2 2 | ||||
3 | ||||
|
r42766 | record change 1/4 to '1.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | @@ -3,3 +3,3 @@ | ||
3 | ||||
-4 | ||||
+4 4 | ||||
5 | ||||
|
r42766 | record change 2/4 to '1.txt'? | ||
(enter ? for help) [Ynesfdaq?] n | ||||
|
r22589 | |||
|
r12075 | diff --git a/2.txt b/2.txt | ||
1 hunks, 1 lines changed | ||||
|
r42766 | examine changes to '2.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | @@ -1,5 +1,5 @@ | ||
a | ||||
-b | ||||
+b b | ||||
c | ||||
d | ||||
e | ||||
|
r42766 | record change 3/4 to '2.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | diff --git a/dir/a.txt b/dir/a.txt | ||
1 hunks, 1 lines changed | ||||
|
r42766 | examine changes to 'dir/a.txt'? | ||
(enter ? for help) [Ynesfdaq?] n | ||||
|
r22589 | |||
|
r12075 | |||
After qrecord a.patch 'tip'" | ||||
$ hg tip -p | ||||
changeset: 1:5d1ca63427ee | ||||
tag: a.patch | ||||
tag: qbase | ||||
tag: qtip | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: aaa | ||||
diff -r 1057167b20ef -r 5d1ca63427ee 1.txt | ||||
--- a/1.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/1.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,5 +1,5 @@ | ||||
1 | ||||
-2 | ||||
+2 2 | ||||
3 | ||||
4 | ||||
5 | ||||
diff -r 1057167b20ef -r 5d1ca63427ee 2.txt | ||||
--- a/2.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/2.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,5 +1,5 @@ | ||||
a | ||||
-b | ||||
+b b | ||||
c | ||||
d | ||||
e | ||||
After qrecord a.patch 'diff'" | ||||
$ hg diff --nodates | ||||
diff -r 5d1ca63427ee 1.txt | ||||
--- a/1.txt | ||||
+++ b/1.txt | ||||
@@ -1,5 +1,5 @@ | ||||
1 | ||||
2 2 | ||||
3 | ||||
-4 | ||||
+4 4 | ||||
5 | ||||
diff -r 5d1ca63427ee dir/a.txt | ||||
--- a/dir/a.txt | ||||
+++ b/dir/a.txt | ||||
@@ -1,4 +1,4 @@ | ||||
-hello world | ||||
+hello world! | ||||
someone | ||||
up | ||||
qrecord b.patch | ||||
$ hg qrecord -d '0 0' -m bbb b.patch <<EOF | ||||
> y | ||||
> y | ||||
> y | ||||
> y | ||||
> EOF | ||||
diff --git a/1.txt b/1.txt | ||||
1 hunks, 1 lines changed | ||||
|
r42766 | examine changes to '1.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | @@ -1,5 +1,5 @@ | ||
1 | ||||
2 2 | ||||
3 | ||||
-4 | ||||
+4 4 | ||||
5 | ||||
|
r42766 | record change 1/2 to '1.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | diff --git a/dir/a.txt b/dir/a.txt | ||
1 hunks, 1 lines changed | ||||
|
r42766 | examine changes to 'dir/a.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | @@ -1,4 +1,4 @@ | ||
-hello world | ||||
+hello world! | ||||
someone | ||||
up | ||||
|
r42766 | record change 2/2 to 'dir/a.txt'? | ||
(enter ? for help) [Ynesfdaq?] y | ||||
|
r22589 | |||
|
r12075 | |||
After qrecord b.patch 'tip' | ||||
$ hg tip -p | ||||
changeset: 2:b056198bf878 | ||||
tag: b.patch | ||||
tag: qtip | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: bbb | ||||
diff -r 5d1ca63427ee -r b056198bf878 1.txt | ||||
--- a/1.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/1.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,5 +1,5 @@ | ||||
1 | ||||
2 2 | ||||
3 | ||||
-4 | ||||
+4 4 | ||||
5 | ||||
diff -r 5d1ca63427ee -r b056198bf878 dir/a.txt | ||||
--- a/dir/a.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/dir/a.txt Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,4 +1,4 @@ | ||||
-hello world | ||||
+hello world! | ||||
someone | ||||
up | ||||
After qrecord b.patch 'diff' | ||||
$ hg diff --nodates | ||||
|
r16913 | |||
$ cd .. | ||||
|
r41956 | |||
qrecord should throw an error when histedit in process | ||||
$ hg init issue5981 | ||||
$ cd issue5981 | ||||
$ cat >> $HGRCPATH <<EOF | ||||
> [extensions] | ||||
> histedit= | ||||
> mq= | ||||
> EOF | ||||
$ echo > a | ||||
$ hg ci -Am 'foo bar' | ||||
adding a | ||||
$ hg log | ||||
changeset: 0:ea55e2ae468f | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: foo bar | ||||
$ hg histedit tip --commands - 2>&1 <<EOF | ||||
> edit ea55e2ae468f foo bar | ||||
> EOF | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
|
r46719 | Editing (ea55e2ae468f), commit as needed now to split the change | ||
(to edit ea55e2ae468f, `hg histedit --continue` after making changes) | ||||
|
r46430 | [240] | ||
|
r41956 | $ echo 'foo bar' > a | ||
$ hg qrecord -d '0 0' -m aaa a.patch <<EOF | ||||
> y | ||||
> y | ||||
> n | ||||
> y | ||||
> y | ||||
> n | ||||
> EOF | ||||
abort: histedit in progress | ||||
(use 'hg histedit --continue' or 'hg histedit --abort') | ||||
|
r46444 | [20] | ||