| Index: gclient.py
|
| diff --git a/gclient.py b/gclient.py
|
| index 88edbd7af489b3034a16a2c4b3cae426af2f5908..6b8020c1490f591b3384b4b92cad9635b7882cc6 100755
|
| --- a/gclient.py
|
| +++ b/gclient.py
|
| @@ -883,6 +883,28 @@ class Dependency(gclient_utils.WorkItem, DependencySettings):
|
|
|
| # Always parse the DEPS file.
|
| self.ParseDepsFile()
|
| +
|
| + # Setup the merge driver for The Great Blink Reformatting. This does just
|
| + # setup a custom merge-driver in the git config of the Chromium main project
|
| + # but does not have any effect until somebody changes the .gitattributes
|
| + # to refer to it. See crbug.com/574611 for more.
|
| + # TODO(primiano): remove some weeks after the reformatting. ETA: Oct 2016.
|
| + if parsed_url == CHROMIUM_SRC_URL:
|
| + CFG_PREFIX = 'merge.clang_format_merge_driver'
|
| + try:
|
| + merge_driver = self._used_scm._Capture(
|
| + ['config', CFG_PREFIX + '.driver']).strip()
|
| + except subprocess2.CalledProcessError:
|
| + merge_driver = None
|
| +
|
| + if not merge_driver:
|
| + print('Installing clang-format merge driver for crbug/574611')
|
| + self._used_scm._Capture(['config', CFG_PREFIX + '.name',
|
| + 'clang-format merge driver (crbug/574611)'])
|
| + self._used_scm._Capture(['config', CFG_PREFIX + '.driver',
|
| + 'clang_format_merge_driver %O %A %B %L %P'])
|
| + self._used_scm._Capture(['config', CFG_PREFIX + '.recursive', 'binary'])
|
| +
|
| self._run_is_done(file_list or [], parsed_url)
|
| if command in ('update', 'revert') and not options.noprehooks:
|
| self.RunPreDepsHooks()
|
|
|