Is it possible to manipulate a subversion property such as svn:externals
via a URL only? (i.e. without having a working copy.)
I'd like a script that pins svn:externals
to a particular revision given a subversion URL, but this seems to be impossible:
$ 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
(I get the same results if I use an actual revision number instead of HEAD
as well.)
Yes, although it's a bit of a hack; svn propedit can change URL targets:
svn propedit foo --editor-cmd "echo bar>" http://example.com/svn/myproject/trunk -m "Property changed"