[PATCH] Demonstrate failure of 'core.ignorecase = true'
From: "Peter J. Weisberg" <pj@irregularexpressions.net>
On a filesystem that *is* case-sensitive, renaming a file to a name
that would be equivalent on a case-insensitive filesystem makes Git
think the original file was deleted. Add a test that demonstrates
this as a known error.
---
I have a repository that contains files that I sync from a place where
names are case-insensitive. When I sync a file that has a change in
the case of the file name, I want Git to ignore that non-change. I
would think core.ignorecase would accomplish this, but it does not.
---
t/t2000-ignorecase-config.sh | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
create mode 100755 t/t2000-ignorecase-config.sh
diff --git a/t/t2000-ignorecase-config.sh b/t/t2000-ignorecase-config.sh
new file mode 100755
index 0000000..9d05cee
--- /dev/null
+++ b/t/t2000-ignorecase-config.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# Copyright (c) 2012 Peter J Weisberg
+#
+
+test_description='core.ignorecase'
+
+. ./test-lib.sh
+
+test_expect_failure "diff-files doesn't show case change when ignorecase=true" '
+ git config core.ignorecase true &&
+
+ touch foo &&
+ git add foo &&
+ git commit -m "foo" &&
+ mv foo FOO &&
+
+ test -z "$(git diff-files)"
+'
+
+test_done
--
1.7.9.1