Use git's --find-renames with webkit-patch
Created attachment 195485 [details] Patch
Attachment 195485 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Tools/ChangeLog', u'Tools/Scripts/webkitpy/common/checkout/scm/git.py']" exit_code: 1 Traceback (most recent call last): File "Tools/Scripts/check-webkit-style", line 48, in <module> sys.exit(CheckWebKitStyle().main()) File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/style/main.py", line 152, in main patch = host.scm().create_patch(options.git_commit, changed_files=changed_files) File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/checkout/scm/git.py", line 299, in create_patch return self.prepend_svn_revision(self.run(command, decode_output=False, cwd=self.checkout_root)) File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/checkout/scm/scm.py", line 78, in run decode_output=decode_output) File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/system/executive.py", line 432, in run_command (error_handler or self.default_error_handler)(script_error) File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/system/executive.py", line 350, in default_error_handler raise error webkitpy.common.system.executive.ScriptError: Failed to run "['git', 'diff', '--binary', '--no-color', '--no-ext-diff', '--full-index', '--find-renames', '-O/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/config/orderfile', u'7dd9a6610f1e48f98adcc73e0b3052ffe3440c1b', '--', 'Tools/ChangeLog', 'Tools/Scripts/webkitpy/common/checkout/scm/git.py']" exit_code: 129 cwd: /mnt/git/webkit-style-queue If any of these errors are false positives, please file a bug against check-webkit-style.
OK, it's not that simple it seems. Apparently --find-renames can guess some renames wrongly. There is already a discussion related to why this was explicitly disabled in bug 48075. In any case, right now patches moving files that are generated from diff are really hard to review, so I think we should aim to fix this somehow eventually.
I think this has become obsolete due to GitHub. But please reopen if you disagree.