patch Генератор команд
Создание команд patch для применения diff к файлам
Начало работы с patch
## Что такое patch?
`patch` применяет diff (созданный через `diff -u`) к набору файлов. Это классический инструмент для распространения и отката изменений в исходном коде.
## Как использовать
1. **Укажите файл патча** через `-i` (например, `-i fix.patch`). 2. **Отбросьте компоненты пути** через `-p` (обычно `-p 1`), чтобы пути внутри diff совпали с вашим деревом. 3. **Задайте параметры** (необязательно): `-R` для реверса, `-d` для запуска в другом каталоге. 4. **Скопируйте и запустите**: скопируйте сгенерированную команду в терминал.
Основные флаги
### `-p NUM` Отбросить начальные слэши Пути файлов в diff часто выглядят как `a/src/app.c` и `b/src/app.c`. Используйте `-p 1`, чтобы убрать начальный префикс `a/` / `b/` и чтобы `patch` работал с `src/app.c`.
### `-i FILE` Прочитать патч из файла Применить патч, хранящийся на диске, вместо чтения из stdin.
### `-d DIR` Сменить каталог Запустить `patch` так, как если бы вы сначала выполнили `cd` в `DIR` — удобно при применении патча из корня репозитория.
### `-R` Реверс Применить патч в обратном направлении, **отменяя** ранее применённое изменение. Эквивалент `git apply -R`.
### Проверка Используйте `--dry-run` (не представлен в этом генераторе) для тестового запуска без изменения файлов:
``` patch -p 1 --dry-run -i fix.patch ```
▶Что означает -p 1?
▶Как отменить применённый патч?
Если этот инструмент оказался полезным для вас, подумайте о том, чтобы подарить мне кофе.
Купите мне кофе.