質問

ローカルマシンでは、 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

他のヒント

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]\+' 
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top