diff --git a/gclient_scm.py b/gclient_scm.py index 60958b5cc..9891e4919 100644 --- a/gclient_scm.py +++ b/gclient_scm.py @@ -583,9 +583,9 @@ class GitWrapper(SCMWrapper): config = subprocess2.capture( ['git', 'config', '-l'], cwd=args[0].checkout_path).decode('utf-8').strip().splitlines() - if 'diff.ignoresubmodules=all' in config: + if 'diff.ignoresubmodules=dirty' not in config: subprocess2.capture( - ['git', 'config', '--unset', 'diff.ignoreSubmodules'], + ['git', 'config', 'diff.ignoreSubmodules', 'dirty'], cwd=args[0].checkout_path) if 'fetch.recursesubmodules=off' not in config: subprocess2.capture( diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py index dc6dfc0ae..b7b101f17 100755 --- a/tests/gclient_scm_test.py +++ b/tests/gclient_scm_test.py @@ -407,31 +407,17 @@ class ManagedGitWrapperTestCase(BaseGitWrapperTestCase): scm = gclient_scm.GitWrapper(self.url, self.root_dir, self.relpath) file_list = [] - scm._Capture(['config', 'diff.ignoreSubmodules', 'all']) scm.update(options, (), file_list) self.assertEqual(file_list, expected_file_list) self.assertEqual(scm.revinfo(options, (), None), 'a7142dc9f0009350b96a11f372b6ea658592aa95') - with self.assertRaises(Exception): - scm._Capture(['config', '--get', 'diff.ignoreSubmodules']) + self.assertEqual(scm._Capture(['config', '--get', 'diff.ignoreSubmodules']), + 'dirty') self.assertEqual( scm._Capture(['config', '--get', 'fetch.recurseSubmodules']), 'off') sys.stdout.close() - def testUpdateUpdate_only_unset_ignoresubmodules_all(self): - if not self.enabled: - return - options = self.Options() - scm = gclient_scm.GitWrapper(self.url, self.root_dir, self.relpath) - file_list = [] - scm._Capture(['config', 'diff.ignoreSubmodules', 'none']) - - scm.update(options, (), file_list) - self.assertEqual(scm._Capture(['config', '--get', 'diff.ignoreSubmodules']), - 'none') - sys.stdout.close() - def testUpdateMerge(self): if not self.enabled: return