Subversionでどのリビジョンをチェックアウトしたか調べる

作業コピーでsvn status --verboseを実行。
2番目の列がチェックアウトしたリビジョン。

例:

C:\unittest-cpp>svn status --verbose
              180      180 cnicholson   .
              180      179 cnicholson   UnitTest++\src
M             180      168 llopis       UnitTest++\src\TestSuite.h
              180      168 llopis       UnitTest++\src\ReportAssert.h
       ....

この場合、作業コピーのベースはRev180。

↓作業コピーでsvnversionコマンドを使う。

C:\uittest-cpp-rev204>svnversion
180

変更を加えていた場合は末尾にM(Modified)が付く⇒svnversionリファレンス

C:\uittest-cpp-rev204>svnversion
180M

svnversionという名前から単にsvnのバージョンを表示するだけの無意味なコマンドかと思っていた。。

更に発見。svn infoでも見れる。こちらはレポジトリの場所や最終変更者もわかる

C:\work\ut++\unittest-cpp-rev180>svn info
パス: .
URL: https://unittest-cpp.svn.sourceforge.net/svnroot/unittest-cpp
リポジトリのルート: https://unittest-cpp.svn.sourceforge.net/svnroot/unittest-cpp
リポジトリ UUID: feadf2a4-a60d-0410-a25d-8df00a7d1702
リビジョン: 180
ノード種別: ディレクトリ
準備中の処理: 特になし
最終変更者: cnicholson
最終変更リビジョン: 180
最終変更日時: 2008-10-31 07:38:37 +0900 (金, 31 10 2008)

TurtoiseSVNだけでこれを調べる方法がわからない・・。「ログを表示」だとレポジトリの最新から遡ったログを見てしまう。そもそも誰も今どのリビジョンに対して作業してるかなんて気にしないのか・・。しばらく放置しておいたディレクトリで「あれ、これなんだっけ」っていう場合ってあると思うんだけど・・。


Subversionのドキュメントは丁寧でわかりやすい