web-dev-qa-db-ja.com

SVNファイルの古いバージョンを表示するにはどうすればよいですか?

現在、いくつかのロジックが欠落しているSVNファイルがあるため、必要なロジックがあった時点まで約40のリビジョンに戻る必要があります。コマンドラインでファイルの差分を表示しようとする以外に(読みにくい)、とにかくそのファイルのコピーを取得してレビューし、部品を回復するために勉強できますか?

149
Xeoncross

古いリビジョンに更新できます:

svn update -r 666 file

または、ファイルを直接表示することもできます。

svn cat -r 666 file | less
230
John Kugelman

現在の作業リビジョンのファイルを別のリビジョンの同じファイルと比較することも興味深いです。

次のようにできます。

$ svn diff -r34 file
4
Kreshnik

特定のリビジョンへの更新:

svn up -r1234 file
2
chris

リビジョンを表示する最良の方法は、あなたにとって使いやすいプログラム/アプリを使用することだと思います。 tracを使用するのが好きです: http://trac.edgewall.org/wiki/TracSubversion

優れたsvnブラウザを提供し、リビジョンを簡単に戻すことができます。

確認したい特定のリビジョンに対してこれを設定するのは少しやり過ぎかもしれませんが、将来これを頻繁に行う場合には便利です。

1
wajiw

Subclipse の最新バージョンを使用すると、cmdプロンプトを使用せずに実際に表示できます。ファイル上で、単に右クリック=>チーム=>別のブランチ/タグ/リビジョンに切り替えます。リビジョンフィールドに加えて、選択をクリックすると、そのファイルのすべてのバージョンが表示されます。

1
Kheem

「そのファイルのコピーを取得する」方法の質問に直接答えるには:

svn cat -r 666 file > file_r666

次に、新しく作成したfile_r666を任意のビューアまたは比較プログラムで表示できます。

kompare file_r666 file

うまく違いを示しています。

回答を投稿したのは、受け入れられた回答のコマンドでは実際にファイルのコピーが提供されず、svn cat -r 666 file | vimがシステムで動作しないためです(Vim: Error reading input, exiting...

1
rehctawrats