diffとpatchは,ディレクトリ構造に関する変更で処理し ないものもあります.例えば,一つのディレクトリツリーには,補助的なファイ ルがある‘D’という名前のディレクトリがあり,もう一方には同じ名前の ‘D’というファイルが含まれていると仮定します.‘diff -r’は, patchがディレクトリのサブツリーをファイルに変換するための十分 な情報を出力しません.
パッチファイルに完全な内容を含める必要がないように,削除されたファイルを 指定する方法があるべきです.diffがそのような情報を生成する方法 がない場合でも,ファイル名が変更されたことをpatchに伝える方法 もあるべきです.ファイルの内容が変更されていない場合でも,ファイルのタイ ムスタンプを変更するようにpatchに伝える方法があるべきです.
これらの問題は,ディレクトリ構造の変更を表現するdiffの出力書式 を拡張し,これらの拡張を理解するようpatchを拡張することで修正 可能です.