作業コピーと任意のリビジョン間の SVN の差分を見つけるにはどうすればいいですか? 質問する

作業コピーと任意のリビジョン間の SVN の差分を見つけるにはどうすればいいですか? 質問する

オープンソース プロジェクト用の複数ファイルのパッチを作成しようとしていますが、作業を開始してからマスター コピーが変更されています。コミットされていないバージョンと、それがチェックされたリビジョン間の SVN の差分 (バージョン管理下のファイルのみ) を取得する必要があります。差分を見つけるには、どの SVN コマンドを使用できますか?

編集:申し訳ありませんが、「作業コピー」という用語を不適切に使用していたようです。コミットされていない変更を、その変更の基になっているリビジョンと比較する必要があります。つまり、リビジョン 1000 をチェックアウトし、ファイルfooとを変更しましたbar。リビジョン番号は現在 1015 までですが、およびのバージョンをfooリビジョンbar1000 のバージョンと比較する必要があります。これを簡単に実行できるコマンドはありますか (プログラムの変更されたコピーを過去のリビジョンと比較する)?

ベストアンサー1

比較するリビジョンを指定するには、diff コマンドで -rN:M パラメータを使用します。作業コピーがチェックアウトされたリビジョンを指定するだけで (M はデフォルトで作業コピーとなるため省略できます)、必要なものが取得されます。

元のリビジョン番号を覚えていない場合は、実行してみるsvn status -vと最初の列に表示されます。

より詳しい情報svn help diff...

おすすめ記事