blob: 963c7812eb6811ed0acc0c2937fe5719229c5248 [file] [log] [blame]
Command-line Repository Root Relative URL Support
=================================================
Syntax Description
------------------
"^/[REL-URL][@PEG]"
'^/': Represents the root url of the repository
'REL_URL': Desired path relative to the root of the repository
'@PEG': Optional standard peg revision
Examples:
^/
^/trunk
^/branches/1.5.x@25000
^/tags/1.4.6/@{2007-12-20T14:37:37.868870Z}
Repository Root URL Determination Logic
---------------------------------------
- If there are arguments that are not root relative urls
- Find the repository root url of each of the non root relative urls
- If their repository root urls do not match, issue an error
- Else use the matching repository root url in place of '^/' in all
the root relative urls
- ElseIf the current working directory is a Subversion working copy
- Determine the repository root url for the current working copy
- If successful, use that repository root url in place of '^/' in all
the root relative urls
- Else issue an error
- Else issue an error
Special Considerations
----------------------
The repository root relative syntax is '^/', not '^'. So use '^/' to refer to
the root of the repository. URLs that begin with a '^' are reserved for future
extension.
Shells That Treat '^' Specially
-------------------------------
ISSUE: zsh with 'setopt extendedglob' enabled
WORKAROUND: quote it in single quotes: '^/'
WORKAROUND: escape it with a backslash: \^/
ISSUE: cmd.exe
WORKAROUND: Double it: ^^/