mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
216d0e41ef
Similar to what was explained in the previous commit, the diff code expected copy source to be in "ctx1", which is not always the case during a merge. This has been broken since before hg 2.0. Also similar to the previous commit, we fix the problem by fixing up the copy dict.
78 lines
1.5 KiB
Perl
78 lines
1.5 KiB
Perl
$ hg init
|
|
$ touch a
|
|
$ hg add a
|
|
$ hg ci -m "a"
|
|
|
|
$ echo 123 > b
|
|
$ hg add b
|
|
$ hg diff --nodates
|
|
diff -r 3903775176ed b
|
|
--- /dev/null
|
|
+++ b/b
|
|
@@ -0,0 +1,1 @@
|
|
+123
|
|
|
|
$ hg diff --nodates -r tip
|
|
diff -r 3903775176ed b
|
|
--- /dev/null
|
|
+++ b/b
|
|
@@ -0,0 +1,1 @@
|
|
+123
|
|
|
|
$ echo foo > a
|
|
$ hg diff --nodates
|
|
diff -r 3903775176ed a
|
|
--- a/a
|
|
+++ b/a
|
|
@@ -0,0 +1,1 @@
|
|
+foo
|
|
diff -r 3903775176ed b
|
|
--- /dev/null
|
|
+++ b/b
|
|
@@ -0,0 +1,1 @@
|
|
+123
|
|
|
|
$ hg diff -r ""
|
|
hg: parse error: empty query
|
|
[255]
|
|
$ hg diff -r tip -r ""
|
|
hg: parse error: empty query
|
|
[255]
|
|
|
|
Remove a file that was added via merge. Since the file is not in parent 1,
|
|
it should not be in the diff.
|
|
|
|
$ hg ci -m 'a=foo' a
|
|
$ hg co -Cq null
|
|
$ echo 123 > b
|
|
$ hg add b
|
|
$ hg ci -m "b"
|
|
created new head
|
|
$ hg merge 1
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
(branch merge, don't forget to commit)
|
|
$ hg rm -f a
|
|
$ hg diff --nodates
|
|
|
|
Rename a file that was added via merge. Since the rename source is not in
|
|
parent 1, the diff should be relative to /dev/null
|
|
|
|
$ hg co -Cq 2
|
|
$ hg merge 1
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
(branch merge, don't forget to commit)
|
|
$ hg mv a a2
|
|
$ hg diff --nodates
|
|
diff -r cf44b38435e5 a2
|
|
--- /dev/null
|
|
+++ b/a2
|
|
@@ -0,0 +1,1 @@
|
|
+foo
|
|
$ hg diff --nodates --git
|
|
diff --git a/a2 b/a2
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/a2
|
|
@@ -0,0 +1,1 @@
|
|
+foo
|