2009-07-07 20 views
3

私は、次のコマンドを使用して、svnリポジトリ内の変更/追加されたファイルのリストをphingで使用するために作成しようとしています。svn diffの改訂範囲の範囲

svn diff --no-diff-deleted --summarize -r 50:HEAD path/to/workingcopy 

私はリビジョン範囲(-rスイッチ)を逆転すると、そのように:

svn diff --no-diff-deleted --summarize -r HEAD:50 path/to/workingcopy 

..私は異なる結果を得ることができます。それは私が必要とする行動ですが、私はそれを理解していません(そして、おそらく私は何かが欠けています)。例:

ヘッドリビジョンにいくつかのファイルを含む新しいディレクトリがあるとします。2番目のコマンドは新しいディレクトリのみをリストし、最初のコマンドはその中のすべての新しいファイルもリストします。少なくとも、それは私がそれがいくつかのテストの後にすると思います。

私はこのことについて明確な文書を見つけることができませんでした。誰かが改訂範囲の順序が何を意味するのか説明できますか?ありがとう!

答えて

6

最初のケースでは、リビジョン50とヘッドの間に加えられたすべての変更が得られます。これは自然に期待するものなので、私はそれ以上説明しません。しかし、逆の範囲はやや面白いです。要するに、リビジョン50を取得するためにヘッドに適用する必要がある差異です。つまり、実行されたすべての変更を元に戻す方法を指定しています。 「2番目のコマンドは新しいディレクトリのみを表示します」と言っていますが、ディレクトリを削除するように指示しています。ディレクトリを削除すると自然にその内容が削除されます。