10

svn:externalsURLのみを介してなど、Subversionプロパティを操作することは可能ですか? (つまり、作業コピーがありません。)

svn:externalsSubversion URL を指定して特定のリビジョンにピン留めするスクリプトが欲しいのですが、これは不可能のようです:

$ svn propset foo bar https://example.com/svn/myproject/trunk
svn: Setting property on non-local target 'https://example.com/svn/myproject/trunk' needs a base revision

$ svn propset foo bar -r HEAD https://example.com/svn/myproject/trunk
svn: Try 'svn help' for more info
svn: Cannot specify revision for setting versioned property 'foo'

$ svn propset foo bar --revprop -r HEAD https://example.com/svn/myproject/trunk
svn: DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent
svn: At least one property change failed; repository is unchanged
svn: Error setting property 'foo': 
could not remove a property

(代わりに実際のリビジョン番号を使用しても同じ結果が得HEADられます。)

4

4 に答える 4

9

はい、ちょっとハックですが。svn propedit は URL ターゲットを変更できます:

svn propedit foo --editor-cmd "echo bar>" http://example.com/svn/myproject/trunk -m "Property changed"

于 2013-07-30T18:12:46.653 に答える
4

いいえ。ファイルのプロパティを変更することは、ファイル自体を変更するようなものです。作業ディレクトリが必要です。作業コピーを必要とせずにコミットを変更する Subversion コマンドがいくつかあります: svn cpsvn mkdir、およびsvn delete. 変更を行うには、他のすべての作業ディレクトリが必要です。

ちなみに、作業コピーがなくてもリビジョンプロパティを変更できます。リビジョン プロパティは、コミット コメント (svn:log)、コミッターの ID (svn:author)、およびコミット時刻 (svn:date) などです。

于 2012-01-11T17:49:39.663 に答える