Команды SFK


    1        2        3        4        5        6        7        8        9        10    

Раздел 8. Development - Разработка
bin-to-src | fuzz | inst | make-random-file | patch | sample |

Help:   Рус   |   Eng        

Команда: patch
sfk patch [-revoke|-redo] yourpatchfile.cpp [-sim|-verify]

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

   -revoke: отменить все исправления, заменив измененные цели
            файлами резервных копий, которые sfk хранит в save_patch.
            после этого затрагиваются целевые файлы (обновление даты/времени)
            для обеспечения правильной перекомпиляции. используйте -keep-dates, чтобы избежать этого.
   -redo : отменить все исправления, а затем повторно применить исправления.
            лучше всего использовать всякий раз, когда вы меняете сам патч-файл,
            чтобы ваши изменения были обновлены в целевых файлах.
   -exact-match: по умолчанию начальные пробелы игнорируются.
                 используйте эту опцию для обеспечения точного совпадения строк 1:1.
   -keep-dates: по умолчанию удаляются отозванные файлы. использовать этот вариант
                для обеспечения соблюдения дат исходных файлов (но только для окон).
   -sim : имитировать то, что будет делать патч, ничего не меняя.
   -qs : краткая сводка, просто сообщите однострочный статус.
   -stats : показать статистику использования select-replace.
   -verify : проверить, не поврежден ли примененный патч.
   -nopid : применить безотзывный патч без [идентификатора патча].
   -anyroot : игнорировать запись :root dir в файле исправления.

   правила патч-файла:
   - патчи выполняются точно в том порядке, в котором они указаны в файле патчей.
   - каждый оператор :from/:to выполняется ровно один раз.
   - если ЛЮБОЙ из операторов :from/:to не соответствует вводу,
     весь файл НЕ пропатчен.
   - первый блок :to для нового целевого файла должен содержать слово [patch-id],
     с помощью комментария в синтаксисе целевого файла, например, в C++: // [идентификатор исправления].
     это помечает файл как исправленный -> sfk не будет исправлять его снова.

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

   патч sfk - пример
      показывает подробный пример файла исправления.
   патч sfk -шаблон
      дает простой пустой шаблон patchfile.