質問
ローカルマシンでは、 svnversion
を使用してSubversionリポジトリのリビジョン番号を取得しても問題ありません。次に、オンラインリポジトリ(Apache2を使用したWebDAV)からリビジョン番号を取得します。
これを試しました:
svnversion http://nick:password@www.myhost.de/svn/test`
ブラウザでは通常どおり動作しました(タイプミスなどがないようにするため)が、 svnversion
はディレクトリが見つからないと言っていました。間違った方向に進んでいたと思います。
リビジョン番号を取得するにはどうすればよいですか
解決
svnversion は作業コピー用ですが、クエリする方法の1つですリポジトリは svn info 次のとおり:
svn info http://nick:password@www.myhost.de/svn | grep Revision
他のヒント
Linuxで、リビジョン番号だけが必要な場合:
svn info http:// nick:password@www.myhost.de/svn/テスト | grep '^ Revision:' | awk '{print $ 2}'
svn info http://nick:password@www.myhost.de/svn/test
リビジョンなど、リモートリポジトリに関する情報を返す必要があります
数字部分のみを取得する便利なAWKワンライナー:
svn info http://nick:password@www.myhost.de/svn | awk '/Revision:/ { print $2 }'
svn(1.9)の新しいバージョンでは、次のことができます。
svn info --show-item revision svn://...
18436
これはリビジョン番号のみを返すはずです。
ロケールが英語でない場合、すべてのgrepバージョンが壊れます。
以前のバージョンでは、試すことができます
svn info --xml | grep '<entry' -3 | awk -F '=' '/revision="/ { print $2 }' | grep -o '[0-9]\+'
xml2パッケージを使用できる場合、より良い方法は次のとおりです。
svn info --xml | xml2 | grep /info/entry/@revision | grep -o '[0-9]\+'
所属していません StackOverflow