web-dev-qa-db-ja.com

どこに配置したかわからない場合に、SVNリポジトリでファイルを検索するにはどうすればよいですか?

同僚は、ファイルfoo_oustanding.dprをチェックインしたことは確かですが、いつ/どこにあるかはわかりません(「ツール」と「ユーティリティ」の補助ブランチ、プロジェクトブランチなどがたくさんあります。
リポジトリ全体でこのファイルを検索する方法が必要です。ソースツリー全体をHDにチェックアウトできましたが、これには数時間かかります。より速い方法はありますか? Repo Browser(Tortoise)を試してみましたが、検索されなかったようです。また、最初からログのダンプについても考えました。しかし、それはばかげているように見えました。

私は自由に使える:

  • 亀SVN 1.6
  • Apache上で動作するSubversion 1.5.6 Windows 2003サーバー上で動作します。
  • 管理者権限を持つサーバーへのリモートデスクトップアクセス。
24
Chris Thornton

かなり最近にチェックインされた場合は、詳細なリモートsvn logツリーの上部から、すべてのブランチにわたるすべてのコミットの履歴を確認します。次に、ファイルとユーザー名の出力をgrepできます。 (これを行うには、コマンドラインsvnが必要です。)

svn log -v -l 500 http:// myserver/svn_root

9
Ken Liu

すべてのファイルのリストを表示するには、コマンドプロンプトでテキストファイルにgrepを送信します。

svn list -R myurl >> results.txt 
12
live-love

Subversion 1.8+クライアントの場合:

svn log -v URL-OF-REPO-ROOT --search foo_oustanding.dpr

9
Lazy Badger

良い質問! Tortoiseには公式の「検索」機能はないようですが、ファイル名を TortoiseSVNでログを検索 することは可能と思われ、多くの場合これで十分です。

7
Pekka

この質問と回答をご覧ください。

SVNリポジトリ検索

svnquery がおそらく必要です。

2
Erikk Ross

私はこのように検索します:

svn list -R url_to_repo | grep Maintain.jar

これを出力します:

trunk/Project/pkg/Release/Maintain.jar
1
Peter Šamperl