11

重複の可能性:
Subversion の特定のコード行に対する変更履歴?

SVN および/または Tortoise SVN (またはその他の SVN ツール) を使用して、ファイルの特定の行の履歴を表示することは可能ですか?

最近、ファイル内の行に出くわし、その作成に関連するログエントリを見つけたいということが何度かありました (コード行がどれくらい古いかを判断するため、または追加された理由についてより大きなコンテキストを取得するため)。 .

現在、私はこれを手作業で行っています。ファイルのログを表示し、さかのぼって、問題の行が存在するかどうかを確認できます。もしそうなら、私はさらに戻ります。そうでない場合は、より最近のリビジョンを見に行きます。変更が加えられたリビジョンが見つかるまで繰り返します。

言うまでもなく、特に古いファイルの場合、このプロセスは厄介です。これを達成する自動化された方法を知っている人はいますか?

4

5 に答える 5

4

非難だけで質問者が必要とすることをするかどうかはわかりません。

TortoiseSVN コマンドの「blame changes」が便利であることがわかりました。2 つのリビジョンを非難し、それらを diff ツールで比較します。

結果は、現在の行、対象のリビジョンでの行、および変更者を示します。これは、2 つの連続したリビジョンを選択する場合に最適です。

これにアクセスするには、[ログの表示] を使用し、下のペインでファイルを右クリックして [blame changes] を選択します。

また、「非難」という用語が気に入らない場合は、「svn 賞賛」を実行すると、同じ結果が得られます。:)

于 2008-10-20T19:55:41.980 に答える
2

より具体的には、特定のリビジョンを調べるために、いくつかの引数を指定して「svn flame」を使用できます。ファイルごとに大きくなる可能性があります...svn blame -r REV#

複数のリビジョンを反復処理する (コマンド ラインから作業している場合) のは、簡単なスクリプトです。

于 2008-10-20T19:03:43.583 に答える
1

TortoiseSVN Blame コンテキスト メニュー オプションを使用してください。これには、個々の行の履歴を調べるための非常に優れたインターフェイスがあります。

于 2008-10-20T18:58:27.633 に答える
1

svn annotate以上を使用することを好みますsvn blame。他の人もそうしてくれたらいいのに。:-(

于 2008-10-20T19:39:40.907 に答える
0

svn blame

于 2008-10-20T18:54:53.447 に答える