Нет. Нет, если вы планируете передать diff
программе, например. patch
.
Можете ли вы придумать синтаксис комментария, который НИКОГДА не может быть частью потока diff
/ patch
? Я не могу.
Изменения должны быть задокументированы в другом месте.
игнорирует строки, которые не похожи на вывод diff -, пока не найдет фрагмент, соответствующий этому синтаксису. Это достаточно переносимо :существующие реализации делают это. Патчи, которые я создаю (, например, используяdiff-patch
)для ncurses и xterm, имеют преамбулу, содержащуюdiffstat , с префиксом строк " #", чтобы сделать это однозначным, например, цитируя один:
# ncurses 6.2 - patch 20200301 - Thomas E. Dickey
#
# ------------------------------------------------------------------------------
#
# Ncurses 6.2 is at
# ftp.gnu.org:/pub/gnu
#
# Patches for ncurses 6.2 can be found at
# ftp://ftp.invisible-island.net/ncurses/6.2
# http://invisible-mirror.net/archives/ncurses/6.2
#
# ------------------------------------------------------------------------------
# ftp://ftp.invisible-island.net/ncurses/6.2/ncurses-6.2-20200301.patch.gz
# patch by Thomas E. Dickey <dickey@invisible-island.net>
# created Mon Mar 2 23:18:56 UTC 2020
# ------------------------------------------------------------------------------
# NEWS | 8 +++++++-
# VERSION | 2 +-
# dist.mk | 4 ++--
# ncurses/base/lib_bkgd.c | 12 +++++++++++-
# package/debian-mingw/changelog | 4 ++--
# package/debian-mingw64/changelog | 4 ++--
# package/debian/changelog | 4 ++--
# package/mingw-ncurses.nsi | 4 ++--
# package/mingw-ncurses.spec | 2 +-
# package/ncurses.spec | 2 +-
# package/ncursest.spec | 2 +-
# 11 files changed, 32 insertions(+), 16 deletions(-)
# ------------------------------------------------------------------------------
Index: NEWS
Prereq: 1.3455
--- ncurses-6.2-20200229+/NEWS 2020-02-29 23:15:52.000000000 +0000
+++ ncurses-6.2-20200301/NEWS 2020-03-02 01:55:08.000000000 +0000
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
С другой стороны, кто-то мог создать новую программу исправления, которая в данном случае выдает ошибку. Учитывая тридцатилетнюю -летнюю историю этой программы, отсутствие переносимости будет отражаться на «новой» программе, а не на том, как она используется в настоящее время.