test-git-import
196 lines
| 3.1 KiB
| text/plain
|
TextLexer
/ tests / test-git-import
Brendan Cully
|
r2864 | #!/bin/sh | ||
hg init a | ||||
cd a | ||||
echo % new file | ||||
hg import -mnew - <<EOF | ||||
diff --git a/new b/new | ||||
new file mode 100644 | ||||
index 0000000..7898192 | ||||
--- /dev/null | ||||
+++ b/new | ||||
@@ -0,0 +1 @@ | ||||
+a | ||||
EOF | ||||
Brendan Cully
|
r3589 | echo % new empty file | ||
hg import -mempty - <<EOF | ||||
diff --git a/empty b/empty | ||||
new file mode 100644 | ||||
EOF | ||||
hg locate empty | ||||
Brendan Cully
|
r2864 | echo % chmod +x | ||
hg import -msetx - <<EOF | ||||
diff --git a/new b/new | ||||
old mode 100644 | ||||
new mode 100755 | ||||
EOF | ||||
test -x new || echo failed | ||||
echo % copy | ||||
hg import -mcopy - <<EOF | ||||
diff --git a/new b/copy | ||||
old mode 100755 | ||||
new mode 100644 | ||||
similarity index 100% | ||||
copy from new | ||||
copy to copy | ||||
diff --git a/new b/copyx | ||||
similarity index 100% | ||||
copy from new | ||||
copy to copyx | ||||
EOF | ||||
test -f copy -a ! -x copy || echo failed | ||||
test -x copyx || echo failed | ||||
cat copy | ||||
hg cat copy | ||||
echo % rename | ||||
hg import -mrename - <<EOF | ||||
diff --git a/copy b/rename | ||||
similarity index 100% | ||||
rename from copy | ||||
rename to rename | ||||
EOF | ||||
hg locate | ||||
echo % delete | ||||
hg import -mdelete - <<EOF | ||||
diff --git a/copyx b/copyx | ||||
deleted file mode 100755 | ||||
index 7898192..0000000 | ||||
--- a/copyx | ||||
+++ /dev/null | ||||
@@ -1 +0,0 @@ | ||||
-a | ||||
EOF | ||||
hg locate | ||||
test -f copyx && echo failed || true | ||||
echo % regular diff | ||||
hg import -mregular - <<EOF | ||||
diff --git a/rename b/rename | ||||
index 7898192..72e1fe3 100644 | ||||
--- a/rename | ||||
+++ b/rename | ||||
@@ -1 +1,5 @@ | ||||
a | ||||
+a | ||||
+a | ||||
+a | ||||
+a | ||||
EOF | ||||
echo % copy and modify | ||||
hg import -mcopymod - <<EOF | ||||
diff --git a/rename b/copy2 | ||||
similarity index 80% | ||||
copy from rename | ||||
copy to copy2 | ||||
index 72e1fe3..b53c148 100644 | ||||
--- a/rename | ||||
+++ b/copy2 | ||||
@@ -1,5 +1,5 @@ | ||||
a | ||||
a | ||||
-a | ||||
+b | ||||
a | ||||
a | ||||
EOF | ||||
hg cat copy2 | ||||
echo % rename and modify | ||||
hg import -mrenamemod - <<EOF | ||||
diff --git a/copy2 b/rename2 | ||||
similarity index 80% | ||||
rename from copy2 | ||||
rename to rename2 | ||||
index b53c148..8f81e29 100644 | ||||
--- a/copy2 | ||||
+++ b/rename2 | ||||
@@ -1,5 +1,5 @@ | ||||
a | ||||
a | ||||
b | ||||
-a | ||||
+c | ||||
a | ||||
EOF | ||||
hg locate copy2 | ||||
hg cat rename2 | ||||
Alexis S. L. Carvalho
|
r3701 | |||
echo % one file renamed multiple times | ||||
hg import -mmultirenames - <<EOF | ||||
diff --git a/rename2 b/rename3 | ||||
rename from rename2 | ||||
rename to rename3 | ||||
diff --git a/rename2 b/rename3-2 | ||||
rename from rename2 | ||||
rename to rename3-2 | ||||
EOF | ||||
hg log -vCr. --template '{rev} {files} / {file_copies%filecopy}\n' | ||||
hg locate rename2 rename3 rename3-2 | ||||
hg cat rename3 | ||||
echo | ||||
hg cat rename3-2 | ||||
Alexis S. L. Carvalho
|
r3716 | |||
echo foo > foo | ||||
hg add foo | ||||
hg ci -m 'add foo' | ||||
echo % binary files and regular patch hunks | ||||
hg import -m binaryregular - <<EOF | ||||
diff --git a/binary b/binary | ||||
new file mode 100644 | ||||
index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4 | ||||
GIT binary patch | ||||
literal 4 | ||||
Lc\${NkU|;|M00aO5 | ||||
diff --git a/foo b/foo2 | ||||
rename from foo | ||||
rename to foo2 | ||||
EOF | ||||
cat foo2 | ||||
Matt Mackall
|
r3736 | hg manifest --debug | grep binary | ||
Alexis S. L. Carvalho
|
r3717 | |||
echo % many binary files | ||||
hg import -m multibinary - <<EOF | ||||
diff --git a/mbinary1 b/mbinary1 | ||||
new file mode 100644 | ||||
index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4 | ||||
GIT binary patch | ||||
literal 4 | ||||
Lc\${NkU|;|M00aO5 | ||||
diff --git a/mbinary2 b/mbinary2 | ||||
new file mode 100644 | ||||
index 0000000000000000000000000000000000000000..112363ac1917b417ffbd7f376ca786a1e5fa7490 | ||||
GIT binary patch | ||||
literal 5 | ||||
Mc\${NkU|\`?^000jF3jhEB | ||||
EOF | ||||
Matt Mackall
|
r3736 | hg manifest --debug | grep mbinary | ||
Alexis S. L. Carvalho
|
r4679 | |||
echo % filenames with spaces | ||||
hg import -m spaces - <<EOF | ||||
diff --git a/foo bar b/foo bar | ||||
new file mode 100644 | ||||
index 0000000..257cc56 | ||||
--- /dev/null | ||||
+++ b/foo bar | ||||
@@ -0,0 +1 @@ | ||||
+foo | ||||
EOF | ||||
cat "foo bar" | ||||