*.origおよび*.rejファイルを生成せずに「パッチ」を実行する

*.origおよび*.rejファイルを生成せずに「パッチ」を実行する

ファイルをpatch生成しないように言うことはできますか?私はこれを非常に迷惑にするパッチを見つけました。.orig.rej

ベストアンサー1

patch他のオプションを指定しないと、-pNパッチを完全に適用できない場合にのみこれらのファイルが生成されます。

したがって、1つのオプションは、誤ったパッチの作成(または受け入れ)を停止することです。 :)

現実の世界に戻ると、これが特徴です。パッチセグメントをソースファイルに適用できない場合は、ソースファイルのpatch(1)一時コピーを保持し、*.orig拒否されたセグメントをにダンプしてから、*.rejパッチセグメントの適用を続行します。アイデアは、*.rejいくつかのフラグメントをパッチ付きファイルにコピーしてファイルを開き、パッチプロセスを手動で進めることができるということです。*.origこのファイルは、パッチ処理中に誤って何かが中断されたため、元のバージョンを参照する必要がある場合にも役立ちます。

*.rejバグパッチを修正するために常にファイルにテキストを使用するわけではありませんが*.orig、必要に応じて持っているとよいでしょう。

無効なパッチが修正された場合は、クイッククリーンアップのためにプロジェクトルートで次のスクリプトを実行します。

#!/bin/bash
find . '(' \
    -name \*-baseline -o \
    -name \*-merge -o \
    -name \*-original -o \
    -name \*.orig -o \
    -name \*.rej \
')' -delete

cleanup-after-bad-patch名前が長いと、誤って実行され、必要なファイルが削除されるのが部分的に防止されるため、そう呼びます。しかし、正直なところ、私は通常を入力して実行しますが、これは私の開発コンピュータでこのスクリプトを見つけるのにcleanTabEnter十分です。PATH

追加モードが適用可能であることを確認してください。私が選んだバージョン管理システムマージ操作中に同じ問題が発生した場合。状況に合わせて調整することもできます。VCS/マイクロコントローラツール。

おすすめ記事