Subject: [PATCH 1/2] checkout: Add test for diff.ignoreSubmodules

From: Jens Lehmann <[email-masked]>
Date: Sat, 28 Aug 2010 16:49:25 +0200

While at it, document that checkout uses this flag too in the Documentation.

Signed-off-by: Jens Lehmann <[email-masked]>
---
 Documentation/config.txt      |    3 ++-
 t/t2013-checkout-submodule.sh |    7 +++++++
 2 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 0510ac7..cda6721 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -829,7 +829,8 @@ diff.renames::
 diff.ignoreSubmodules::
 	Sets the default value of --ignore-submodules. Note that this
 	affects only 'git diff' Porcelain, and not lower level 'diff'
-	commands such as 'git diff-files'.
+	commands such as 'git diff-files'. 'git checkout' also honors
+	this setting when reporting uncommitted changes.

 diff.suppressBlankEmpty::
 	A boolean to inhibit the standard behavior of printing a space
diff --git a/t/t2013-checkout-submodule.sh b/t/t2013-checkout-submodule.sh
index fda3f0a..3beb0b3 100755
--- a/t/t2013-checkout-submodule.sh
+++ b/t/t2013-checkout-submodule.sh
@@ -39,4 +39,11 @@ test_expect_success '"checkout <submodule>" updates the index only' '
 	git diff-files --quiet
 '

+test_expect_success '"checkout <submodule>" honors diff.ignoreSubmodules' '
+	git config diff.ignoreSubmodules dirty &&
+	echo x> submodule/untracked &&
+	git checkout HEAD >actual 2>&1 &&
+	! test -s actual
+'
+
 test_done
-- 
1.7.2.2.515.g13860