Удалить изменения определенного файла из файла патча - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть файл патча, который меняет много файлов.Он случайно включает изменения в некоторых файлах, которые не должны.Я могу вручную удалить все упоминания об этих файлах из патча, чтобы получить правильный файл патча, но это утомительный процесс.

Как программно (стандартными * инструментами nix) удалить все упоминания файла из патча?


Примечание. У меня нет настройки Git, из которой изначально был сгенерирован патч, поэтому меня интересуют только решения, которые работают только с файлом патча.Учитывая структуру этих файлов, это должно быть осуществимо.

Этот вопрос касается Git: Создать файл исправлений, исключая некоторые файлы

Этот вопрос касается TFS: Как удалить определенный файл из набора изменений?

1 Ответ

0 голосов
/ 05 февраля 2019

Многие дистрибутивы Linux предоставляют patchutils , которая включает в себя несколько утилит для этого:

Filterdiff выберет части файла исправления, которые применяются к файлам, соответствующим (или, альтернативно, несоответствие) подстановочный знак оболочки.

Splitdiff отделяет исправления от файла исправления, так что каждый новый файл исправления изменяет только один данный файл один раз.Таким образом, файл, содержащий несколько инкрементных патчей, можно разбить на отдельные инкрементные патчи.

...