1

Subversionにはオプションがありますdiff3-has-program-arg

### Set diff3-has-program-arg to 'yes' if your 'diff3' program
###   accepts the '--diff-program' option.
diff3-has-program-arg = [ yes | no ]

My diff3 does support the --diff-program option, but I don't see where to configure the program to be called.

  • How do I do this?
  • Why would I do this?
4

2 に答える 2

3

diff3-has-program-arg粗雑に見える。このオプションは で参照されlibsvn_subr/io.cていますが、このオプションを使用するコードはSVN_DIFF3_HAS_DIFF_PROGRAM_ARGifdef によって無効になっています。

そのマクロを設定する構成ロジックは、このリビジョンで削除されました。

svn dev list の古いメールから、 HAS_DIFF_PROGRAM_ARG の本来の必要性は--diff-program、subversion の内部 diff サポートの実装前に、オプションを必要とするバージョンの diff とそれを拒否するバージョンの両方をサポートすることだったようです。

于 2011-04-19T02:12:29.233 に答える
1

--- いくつかのテストが実行された後に編集されました ---

この--diff-program=valueオプションは基本的diff3に、どの 2 つのファイルの相違点をチェックするプログラムを使用するかを指示します。 diff3次に、2 つのファイルの違いをチェックするプログラムを数回実行して出力を取得し、それらを 3 方向の差分出力にインターリーブします。

diff3 --diff-program=diff a b c効果的に使うには、双方向ファイル差分プログラムとして使用するように指示しますdiff3diffsubversion 構成引数は、3 方向差分プログラムを呼び出すときにパラメーターdiff3-has-program-argを追加するための subversion へのフラグです。--diff-program=xxx双方向差分ツールを設定できる別のオプションがどこかにあるに違いありません。

その灰色ひげは私の足を引っ張っていなかったと思いますが(その時)、彼が引っ張っていたときはもっと楽しかったです. bash シェル爆弾をコード化した人に聞いてみてください。

--- 元の投稿に続く ---

古いdiff3 ページから(ありがとう GNU)。

--diff-program=program
    Use the compatible comparison program program to compare files instead of diff. 

これにより、(内部のテキスト マッチャではなく) 外部比較プログラムを使用する diff の機能が有効になります。私はそれが使われているのを見たことがありませんが、ある年老いた白ひげは、これはテキスト比較プログラムよりも優れたものであると説明してくれました。たとえば、異なる「C」入力間の空白を正規化して、diff がずれないようにするプログラムなどです。タブ/スペース変換の問題 (など) が原因です。

これが本当なのか、それとも当時かなり「緑」だった人に伝えられた空想的な神話なのか、私は知りたい.

于 2011-04-22T19:52:05.387 に答える