foo.txt
という名前のファイルが(任意のリビジョンの)svnリポジトリにコミットされたかどうかを検索するにはどうすればよいですか?
チェックアウトしたフォルダーのルートを右クリック> TortoiseSVN>ログを表示
そこにもファイル名を入力できます。
これはあなたのために働くはずです:
svn log -r 0:HEAD -v $REPOSITORY_PATH | grep "/foo.txt"
これにより、ファイルへのパスとログからの状態がわかります。ヒットした場合は、ある時点で存在したことがわかります。結果が得られない場合、リポジトリのどのリビジョンにも一致するものはありません。また、各ログ行の状態も表示されます。例:
A /some/path/foo.txt D /some/path/foo.txt
しかし、私は追加情報はあなたにとって問題ではないと思います。 :)
Subversion 1.8+クライアントと --search
および--search-and
オプションがsvn log
コマンドで使用可能になります を使用します。これらのオプションでは、リポジトリ内で全文検索を実行できず、次のデータのみを検索します。
svn:author
バージョン管理外のプロパティ)、svn:date
バージョン管理外のプロパティ)、svn:log
バージョン管理外プロパティ)、私の推測では、次のコマンドラインで「foo.txt」を検索できます。
svn log -v --search "foo.txt"
。
これらの新しいsvn log
検索オプションに関する完全なヘルプページは次のとおりです。
If the --search option is used, log messages are displayed only if the
provided search pattern matches any of the author, date, log message
text (unless --quiet is used), or, if the --verbose option is also
provided, a changed path.
The search pattern may include "glob syntax" wildcards:
? matches any single character
* matches a sequence of arbitrary characters
[abc] matches any of the characters listed inside the brackets
If multiple --search options are provided, a log message is shown if
it matches any of the provided search patterns. If the --search-and
option is used, that option's argument is combined with the pattern
from the previous --search or --search-and option, and a log message
is shown only if it matches the combined search pattern.
If --limit is used in combination with --search, --limit restricts the
number of log messages searched, rather than restricting the output
to a particular number of matching log messages.