Отдельные пробельные патчи от непробельных патчей - PullRequest
0 голосов
/ 02 августа 2011

Кто-нибудь знает способ или скрипт, который с помощью файла исправления может отделить изменения пробелов от функциональных изменений?

Вот проблема. У моего проекта есть строгие требования к стилю пробелов, и у меня есть редактор, который их применяет. Нет вкладок, нет пробелов. Мой редактор настроен на автоматическое удаление пробелов, например.

Итак, что неизбежно происходит, так это все хорошо, пока я не отредактирую какой-либо сторонний код. Я забываю отключить эти очень удобные функции, а затем раздражаюсь от разработчиков, что изменения пробелов необходимо отделить от функциональных изменений. Итак, за 6 часов редактирования кода все должно быть переделано вручную. Неудивительно, что многие ошибки и функции не исправляются, когда разработчики больше интересуются «правилами», чем «результатами». Ладно, хватит скулить.

В идеале я бы просто запустил какой-нибудь скрипт, который удалил бы все изменения пробелов из патча и все было бы готово. Кто-нибудь знает такую ​​функцию?

1 Ответ

2 голосов
/ 02 августа 2011

Сохраните копию исходного файла, примените патч, а затем снова выполните различие - на этот раз с игнорируемыми изменениями пробелов:

$ diff -u --ignore-all-space orig-file file > patch

Теперь примените патч к orig-file и повторите раз, с включенными пробелами - и у вас есть 2-й патч с изменениями только пробелов.

1007 * Гит * С git это немного проще: $ git diff -w > patch

...