|
svn_diffふたつのパスの差分を再帰的に取得する 説明
array svn_diff(
string $path1 ,int $rev1 ,string $path2 ,int $rev2 )
ふたつのパス
パラメータ
戻り値
ふたつのストリームの内容を含む配列のリストを返します。
最初のストリームが diff の出力で、もうひとつはエラー出力です。
このストリームを読み込むには fread
を使用します。エラーが発生した場合は デフォルトでは、diff の出力は Subversion 版の unified diff 形式となります。しかし、Subversion の設定によっては » 外部の diff エンジン を使うこともできます。 例
例1 基本的な例 ここでは、この関数の基本的な使用法と結果の取得法を示します。
上の例の出力は以下となります。 Index: http://www.example.com/svnroot/trunk/foo =================================================================== --- http://www.example.com/svnroot/trunk/foo (.../foo) (revision 23) +++ http://www.example.com/svnroot/branches/dev/foo (.../foo) (revision 27) // この後に diff の内容が続きます
例2 あるパスのふたつのリビジョンの差分の取得 この例では、外部リポジトリ上の同じパスのアイテムについて、 ふたつのリビジョン間の差分を簡単に取得できるようにしたラッパー関数を実装します (デフォルトの構文だと少々冗長なので)。
例3 ローカルファイルの差分の取得 この例では、ふたつのローカルファイルの差分を 簡単に取得できるようなラッパー関数を実装します。 realpath による補正と、 バックスラッシュに関するバグの対応を含めています。
注意警告
この関数は、 実験的 なものです。この関数の動作・ 名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 この関数は自己責任で使用してください。 |