RFC: Untangling the peg revision knot (was: A preliminary study of non-contiguous transformations in the Hilbert space of Alexandrian solutions)
From: Branko Čibej <brane_at_xbc.nu>
Date: Wed, 26 Nov 2008 04:54:41 +0100
Quoting another poor user:
> anyone who can explain what's happening, below?
This was quickly tracked down to the illogical discrepancy between the
I think it's time to admit that defaulting all peg-revisions to HEAD was
I can already hear the cries, "but, our compatibility rules ..." Indeed
*Proposal A step 1*
Change the defaults for all commands that accept peg revisions to
The output of "svn help" would be extended to describe the per-command
[Note for strict-compatibility-rules aficionados: this change in
*Proposal A step 2*
Change the peg-revision defaults in libsvn_client. This would require
I do not propose to change peg-rev defaults in lower-level libraries,
*Proposal B*
Change the syntax for peg revisions on the command line. I've always
Instead I propose that the syntax of -r and -c be extended with peg
-r REV1[:REV2]
we'd introduce
-r REV1[:REV2][@PEG]
For the really nasty "svn diff -rA:B URL_at_PEG1 URL2_at_PEG2", I'd consider
svn diff [-r [A[:B]][@PEG1[:PEG2]]] URL URL
That's quite complex, but it should be a relatively rare pattern. And
*Or* we could introduce
-r REV1[@PEG1][:REV2[@PEG2]]
or, more precisely (where \R represents any valid revision speciifer):
/((@\R)|(\R(@\R)?))(:\R(@\R)?)?/
and the single-peg variant would become one of
-r REV1[@PEG][:REV2]
Thanks for patiently reading all the way to here.
Yes I could find some time to implement these changes, or a subset of
-- Brane
---------------------------------------------------------------------
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.