¿Cómo evitar que Patch cree archivos de respaldo?

¿Cómo evitar que Patch cree archivos de respaldo?

Estoy escribiendo un código que aplicará el programa patch(1) y quiero evitar por completo que cree archivos de respaldo. Es decir, no quiero que cree foo.origarchivos cuando no puede actualizar un archivo en particular (en cuyo caso crea un foo.rejarchivo), o cuando actualiza exitosamente un archivo pero hay cierta confusión, las cuales normalmente hace. . Parece más fácil decirlo que hacerlo.

Caso base: ejecuto "patch" en un directorio fuente de Debian y no se puede actualizar el debian/changelogarchivo. patch crea un debian/changelog.origarchivo de archivo (que es lo que estoy tratando de evitar).

La documentación menciona un --no-backup-if-mismatchinterruptor, que parece ser justo lo que necesito. Pero cuando lo agrego, el archivo de respaldo aún se crea, solo que ahora se llama debian/changelog.~1~.

La documentación también dice que cuando el --posixinterruptor esté presente, no se realizarán copias de seguridad. Cuando uso este modificador en lugar de --no-backup-if-mismatch, el archivo de copia de seguridad aún se crea, pero con el .origsufijo original.

La única solución que he encontrado es usar el -B/--prefixinterruptor para dirigir las copias de seguridad y escribirlas en un directorio de mi elección. Pero esto parece un truco feo. ¿No existe una forma más limpia de evitar las copias de seguridad?

Respuesta1

Aparentemente -B/--prefixes el único camino a seguir.

Respuesta2

De acuerdo a(diffutils)Copias de seguridad, --no-backup-if-mismatchhace lo que quieres.

Respuesta3

Considere usar la --version-control noneopción indocumentada. Esa opción esdocumentado para la variante FreeBSD depatch.

información relacionada