Czy można manipulować właściwością subwersji, taką jak svn:externals
tylko za pomocą adresu URL? (Czyli bez konieczności posiadania kopii roboczej.)Jak wykorzystać propozycję subversion do adresu URL?
Chciałbym skrypt szpilki svn:externals
do konkretnej rewizji danego URL Subversion, ale to wydaje się być niemożliwe:
$ 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
(mam takie same wyniki, jeśli użyję rzeczywistego numeru wersji zamiast HEAD
).
Obejście problemu wydaje się, że "svn checkout --depth = empty' w tymczasowy katalog z' mktemp' lub podobnym (jest to dość szybko), użyj 'svn propset', aby wprowadzić zmianę, zatwierdzić, a następnie usunąć katalog tymczasowy. – mjs
Istnieje inna opcja: svnmucc, która jest dołączona do źródeł SVN, ale nie jest domyślnie wbudowana ani zainstalowana. Możesz przeczytać o tym na http://svnbook.red-bean.com/en/1.8/svn.ref.svnmucc.re.html. – trent
Dodając do notatki przez @trent, TortoiseSVN dołącza teraz svnmucc z instalatorem od wersji 1.8.1 i nowszej https://sourceforge.net/p/tortoisesvn/tickets/496/ –