Document svnmucc
The official documentation of the Subversion version control system
Brought to you by:
cmpilato,
danielshahaf
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: markus.k...@gmail.com
Also, please document how to use svnmucc to safely commit a change to a file without
going via any local working file. (Working directories and files are very cumbersome
if the author of say a CGI script wants to commit a change to a single file. That's
quite crucial for people who write web content-management systems that use Subversion
as the underlying database.)
http://svn.haxx.se/dev/archive-2008-09/0179.shtml
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
(No comment was entered for this change.)
Labels: -Milestone-en-1.6 Milestone-whenever
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
Note that as of Subversion 1.8, svnmucc has joined the ranks of the other first-class binaries. As such, bumping the milestone to be less ... eternally distant.
Labels: -Milestone-whenever Milestone-en-1.8
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
Started documenting svnmucc in [r4314]:
Sending book/ch03-advanced-topics.xml
Sending book/ch09-reference.xml
Transmitting file data ..
Committed [r4314].
TDDO: Write the reference matter for chapter 9.
Status: Started
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
This from an email exchange with Daniel Shahaf:
-------------------------------------------------------------------------
>> Should this section mention the race conditions inherent to
>> working on URLs (with either svn or svnmucc) --- i.e., the option to
>> specify the edit's base revision explicitly?
>
> I hadn't yet decided whether to put that into this section or into the
> reference matter. Since I (intentionally) didn't go into details on the
> relevant subcommands (put, propset[f], propdel), it seemed odd to mention
> the race condition here. But then again, the race is the very reason why
> 'svn' doesn't offer this functionality itself, so maybe it bears spelling
> out here and repeating in the reference chapter. What do you think?
I think it's worth mentioning it, as it's fundamental to how URL
operations work and is easy to miss (svnmucc won't error out if you
don't pass a -r option). If you feel it's advanced, it could go in an
infobox / warningbox.
I agree there's no need to enumerate svnmucc's subcommands action verbs
(not 'subcommands', since more than one can be specified) in ch03, but
it'd be useful to say that _any_ commit --- tree modification --- that
can be done in Subversion, can be done via svnmucc.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: markus.k...@gmail.com
I think that there really ought to be an example of how to achieve transaction safety when using "svnmucc put", otherwise only few will understand how to use option -r in practice to implement transactions that edit files safely. The example transaction could show something along the lines of
$ latest=`svnlook youngest path-to-repos`
$ svn cat -r $latest $url | sed -e 's/old/new/' | svnmucc put -r $latest $url
That is it should
- look up what the latest version is
- get a copy of that version
- edit it
- put it back while checking for (and ideally even handling) conflicts
all without using the file system.
By the way, is there any URL-based equivalent of "svnlook youngest $repo-path"? (e.g. "svn youngest $url")? Otherwise the example would need to include clumsy parsing code for the output of "svn info --xml $url" if it has no file path to the repository.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
Markus, I agree with your comments, and will look to incorporate your suggestion.
By the way, the closest thing to a remote "youngest" operation that I can think of is:
svn info ${REPOS_URL} | grep '^Revision:' | cut -f2 -d ' '
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: cmpilato
Calling this finished now. The new bits may require further modification post-review, and I may find more places in the book where svnmucc's unique offering can be recommended, but the core of what needs to be said has been said.
Status: Fixed