Mercurial > hg-stable
view tests/test-git-import @ 11063:eb23c876c111
tag: warn users about tag/branch possible name conflicts
As reported recently, Mercurial users can easily find confusion when
using a common name for a tag and a branch. It seems reasonable to warn
them about this potential outcome, to avoid that "surprise".
* Explain briefly the issue in "hg help tag"
* Warn when tagging a revision
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 19 Apr 2010 17:41:12 +0900 |
parents | 377d879e9d1b |
children | 77600d697d0e |
line wrap: on
line source
#!/bin/sh hg init a cd a echo % new file hg import -d "1000000 0" -mnew - <<EOF diff --git a/new b/new new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/new @@ -0,0 +1 @@ +a EOF hg tip -q echo % new empty file hg import -d "1000000 0" -mempty - <<EOF diff --git a/empty b/empty new file mode 100644 EOF hg tip -q hg locate empty echo % chmod +x hg import -d "1000000 0" -msetx - <<EOF diff --git a/new b/new old mode 100644 new mode 100755 EOF hg tip -q test -x new || echo failed echo % copy hg import -d "1000000 0" -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 hg tip -q if "$TESTDIR/hghave" -q execbit; then test -f copy -a ! -x copy || echo failed test -x copyx || echo failed else test -f copy || echo failed fi cat copy hg cat copy echo % rename hg import -d "1000000 0" -mrename - <<EOF diff --git a/copy b/rename similarity index 100% rename from copy rename to rename EOF hg tip -q hg locate echo % delete hg import -d "1000000 0" -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 tip -q hg locate test -f copyx && echo failed || true echo % regular diff hg import -d "1000000 0" -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 hg tip -q echo % copy and modify hg import -d "1000000 0" -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 tip -q hg cat copy2 echo % rename and modify hg import -d "1000000 0" -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 tip -q hg locate copy2 hg cat rename2 echo % one file renamed multiple times hg import -d "1000000 0" -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 tip -q hg log -vr. --template '{rev} {files} / {file_copies}\n' hg locate rename2 rename3 rename3-2 hg cat rename3 echo hg cat rename3-2 echo foo > foo hg add foo hg ci -m 'add foo' echo % binary files and regular patch hunks hg import -d "1000000 0" -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 hg tip -q cat foo2 hg manifest --debug | grep binary echo % many binary files hg import -d "1000000 0" -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 hg tip -q hg manifest --debug | grep mbinary echo % filenames with spaces hg import -d "1000000 0" -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 hg tip -q cat "foo bar" echo % copy then modify the original file hg import -d "1000000 0" -m copy-mod-orig - <<EOF diff --git a/foo2 b/foo2 index 257cc56..fe08ec6 100644 --- a/foo2 +++ b/foo2 @@ -1 +1,2 @@ foo +new line diff --git a/foo2 b/foo3 similarity index 100% copy from foo2 copy to foo3 EOF hg tip -q cat foo3