test-mq-qrefresh.t
552 lines
| 8.6 KiB
| text/troff
|
Tads3Lexer
/ tests / test-mq-qrefresh.t
Yuya Nishihara
|
r23172 | $ cat <<EOF >> $HGRCPATH | ||
> [extensions] | ||||
> mq = | ||||
> [diff] | ||||
> nodates = 1 | ||||
> EOF | ||||
Adrian Buehlmann
|
r12324 | |||
$ hg init a | ||||
$ cd a | ||||
$ mkdir 1 2 | ||||
$ echo 'base' > 1/base | ||||
$ echo 'base' > 2/base | ||||
$ hg ci -Ambase | ||||
adding 1/base | ||||
adding 2/base | ||||
$ hg qnew -mmqbase mqbase | ||||
$ echo 'patched' > 1/base | ||||
$ echo 'patched' > 2/base | ||||
$ hg qrefresh | ||||
$ hg qdiff | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ hg qdiff . | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ echo 'patched again' > base | ||||
$ hg qrefresh 1 | ||||
$ hg qdiff | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ hg qdiff . | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
qrefresh . in subdir: | ||||
$ ( cd 1 ; hg qrefresh . ) | ||||
$ hg qdiff | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ hg qdiff . | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
qrefresh in hg-root again: | ||||
$ hg qrefresh | ||||
$ hg qdiff | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ hg qdiff . | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
qrefresh --short tests: | ||||
$ echo 'orphan' > orphanchild | ||||
$ hg add orphanchild | ||||
timeless@mozdev.org
|
r17492 | $ hg qrefresh nonexistentfilename # clear patch | ||
Adrian Buehlmann
|
r17906 | nonexistentfilename: * (glob) | ||
Adrian Buehlmann
|
r17978 | $ hg diff -c qtip | ||
Adrian Buehlmann
|
r12324 | $ hg qrefresh --short 1/base | ||
$ hg qrefresh --short 2/base | ||||
$ hg qdiff | ||||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 orphanchild | ||||
--- /dev/null | ||||
+++ b/orphanchild | ||||
@@ -0,0 +1,1 @@ | ||||
+orphan | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ hg st | ||||
A orphanchild | ||||
? base | ||||
diff shows what is not in patch: | ||||
$ hg diff | ||||
Brodie Rao
|
r12376 | diff -r ???????????? orphanchild (glob) | ||
Adrian Buehlmann
|
r12324 | --- /dev/null | ||
+++ b/orphanchild | ||||
@@ -0,0 +1,1 @@ | ||||
+orphan | ||||
Before starting exclusive tests: | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
Exclude 2/base: | ||||
$ hg qref -s -X 2/base | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
status shows 2/base as dirty: | ||||
$ hg status | ||||
M 2/base | ||||
A orphanchild | ||||
? base | ||||
Remove 1/base and add 2/base again but not orphanchild: | ||||
$ hg qref -s -X orphanchild -X 1/base 2/base orphanchild | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 2/base | ||||
--- a/2/base | ||||
+++ b/2/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
Add 1/base with include filter - and thus remove 2/base from patch: | ||||
$ hg qref -s -I 1/ o* */* | ||||
$ cat .hg/patches/mqbase | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa | ||
Adrian Buehlmann
|
r12324 | mqbase | ||
diff -r e7af5904b465 1/base | ||||
--- a/1/base | ||||
+++ b/1/base | ||||
@@ -1,1 +1,1 @@ | ||||
-base | ||||
+patched | ||||
$ cd .. | ||||
Test qrefresh --git losing copy metadata: | ||||
$ hg init repo | ||||
$ cd repo | ||||
$ echo "[diff]" >> .hg/hgrc | ||||
$ echo "git=True" >> .hg/hgrc | ||||
$ echo a > a | ||||
$ hg ci -Am adda | ||||
adding a | ||||
$ hg copy a ab | ||||
$ echo b >> ab | ||||
$ hg copy a ac | ||||
$ echo c >> ac | ||||
Capture changes: | ||||
$ hg qnew -f p1 | ||||
$ hg qdiff | ||||
diff --git a/a b/ab | ||||
copy from a | ||||
copy to ab | ||||
--- a/a | ||||
+++ b/ab | ||||
@@ -1,1 +1,2 @@ | ||||
a | ||||
+b | ||||
diff --git a/a b/ac | ||||
copy from a | ||||
copy to ac | ||||
--- a/a | ||||
+++ b/ac | ||||
@@ -1,1 +1,2 @@ | ||||
a | ||||
+c | ||||
Refresh and check changes again: | ||||
$ hg qrefresh | ||||
$ hg qdiff | ||||
diff --git a/a b/ab | ||||
copy from a | ||||
copy to ab | ||||
--- a/a | ||||
+++ b/ab | ||||
@@ -1,1 +1,2 @@ | ||||
a | ||||
+b | ||||
diff --git a/a b/ac | ||||
copy from a | ||||
copy to ac | ||||
--- a/a | ||||
+++ b/ac | ||||
@@ -1,1 +1,2 @@ | ||||
a | ||||
+c | ||||
$ cd .. | ||||
Martin Geisler
|
r12399 | Issue1441: qrefresh confused after hg rename: | ||
Adrian Buehlmann
|
r12324 | |||
$ hg init repo-1441 | ||||
$ cd repo-1441 | ||||
$ echo a > a | ||||
$ hg add a | ||||
$ hg qnew -f p | ||||
$ hg mv a b | ||||
$ hg qrefresh | ||||
$ hg qdiff | ||||
diff -r 000000000000 b | ||||
--- /dev/null | ||||
+++ b/b | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
$ cd .. | ||||
Martin Geisler
|
r12399 | Issue2025: qrefresh does not honor filtering options when tip != | ||
qtip: | ||||
Adrian Buehlmann
|
r12324 | |||
$ hg init repo-2025 | ||||
$ cd repo-2025 | ||||
$ echo a > a | ||||
$ echo b > b | ||||
$ hg ci -qAm addab | ||||
$ echo a >> a | ||||
$ echo b >> b | ||||
$ hg qnew -f patch | ||||
$ hg up -qC 0 | ||||
$ echo c > c | ||||
$ hg ci -qAm addc | ||||
$ hg up -qC 1 | ||||
refresh with tip != qtip: | ||||
$ hg --config diff.nodates=1 qrefresh -I b | ||||
$ hg st | ||||
M a | ||||
$ cat b | ||||
b | ||||
b | ||||
$ cat .hg/patches/patch | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent 1a60229be7ac3e4a7f647508e99b87bef1f03593 | ||
Adrian Buehlmann
|
r12324 | |||
diff -r 1a60229be7ac b | ||||
--- a/b | ||||
+++ b/b | ||||
@@ -1,1 +1,2 @@ | ||||
b | ||||
+b | ||||
$ cd .. | ||||
Issue1441 with git patches: | ||||
$ hg init repo-1441-git | ||||
$ cd repo-1441-git | ||||
$ echo "[diff]" >> .hg/hgrc | ||||
$ echo "git=True" >> .hg/hgrc | ||||
$ echo a > a | ||||
$ hg add a | ||||
$ hg qnew -f p | ||||
$ hg mv a b | ||||
$ hg qrefresh | ||||
$ hg qdiff --nodates | ||||
diff --git a/b b/b | ||||
new file mode 100644 | ||||
--- /dev/null | ||||
+++ b/b | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
$ cd .. | ||||
Martin Geisler
|
r13632 | Refresh with bad usernames. Mercurial used to abort on bad usernames, | ||
but only after writing the bad name into the patch. | ||||
$ hg init bad-usernames | ||||
$ cd bad-usernames | ||||
$ touch a | ||||
$ hg add a | ||||
$ hg qnew a | ||||
$ hg qrefresh -u 'foo | ||||
> bar' | ||||
transaction abort! | ||||
rollback completed | ||||
refresh interrupted while patch was popped! (revert --all, qpush to recover) | ||||
abort: username 'foo\nbar' contains a newline! | ||||
[255] | ||||
Patrick Mezard
|
r14452 | $ rm a | ||
Martin Geisler
|
r13632 | $ cat .hg/patches/a | ||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent 0000000000000000000000000000000000000000 | ||
Mads Kiilerich
|
r22519 | |||
Martin Geisler
|
r13632 | diff --git a/a b/a | ||
new file mode 100644 | ||||
$ hg qpush | ||||
applying a | ||||
now at: a | ||||
$ hg qrefresh -u ' ' | ||||
transaction abort! | ||||
rollback completed | ||||
refresh interrupted while patch was popped! (revert --all, qpush to recover) | ||||
abort: empty username! | ||||
[255] | ||||
$ cat .hg/patches/a | ||||
# HG changeset patch | ||||
Mads Kiilerich
|
r22521 | # Parent 0000000000000000000000000000000000000000 | ||
Mads Kiilerich
|
r22519 | |||
Martin Geisler
|
r13632 | diff --git a/a b/a | ||
new file mode 100644 | ||||
$ cd .. | ||||
Pierre-Yves David
|
r16026 | |||
Refresh with phase data: | ||||
$ cd repo | ||||
$ echo 'babar' >> a | ||||
$ hg qnew -m 'update a' p2.diff | ||||
$ hg phase p2.diff | ||||
2: draft | ||||
$ echo 'beber' >> a | ||||
$ hg qref | ||||
$ hg phase p2.diff | ||||
2: draft | ||||
$ hg phase --force --secret p2.diff | ||||
$ echo 'bibir' >> a | ||||
$ hg qref | ||||
$ hg phase p2.diff | ||||
2: secret | ||||
Mads Kiilerich
|
r16913 | $ cd .. | ||