1

VisualSVN サーバーと TortoiseSVN を使用しています。特定のファイルの複数のリビジョンにわたって、特定の行が表示される場所を見つけようとしています。

save(12);私の作業コピーと比較して、過去のリビジョンのどこに表示され、どのリビジョンに移動されたかを確認しようとしています。

r1 と私の作業コピーの間の統一された差分は、最初の場所のみを示しています。差分を個別に表示してみましたが、何百ものリビジョンがあります。

これを行う方法はありますか?

4

3 に答える 3

0

これは手動で行うことも、スクリプトを使用して自動的に行うこともでき、段階的に機能しますが、その速さに驚かれることでしょう。

  1. 行が一方の位置にある場合に合格する grep コマンドを作成します。たとえば、grep -n " Text of the line " filename.ext | grep CurrentLineNo :
  2. 1000 の可能なリビジョンがあると仮定すると、これは 1000 で合格し、0 で失敗します。
  3. 1 つのファイルを rev 500 に更新し、再度実行します。成功した場合は下降し、失敗した場合は上昇します。どちらの場合も、以前の半分の差を使用し、同じことを続けます。つまり、250、125、62、31、15 です。 , 7, 4, 2, 1 - このプロセスの最後に - (二分探索) - ファイルの 2 つの隣接するリビジョンが 1 合格 1 不合格になります。
于 2013-07-23T06:58:53.073 に答える
0

ファイルの現在のリビジョンで TortoiseSVN 非難ツールを実行すると、その行が現在の状態になったリビジョン (および誰が実行したか) が表示されるはずです。

于 2013-07-22T11:16:50.993 に答える