pub fn split_double_dot_range(spec: &str) -> Option<(&str, &str)>Expand description
Resolve a revision string to an object ID.
Supports:
- full 40-hex object IDs (must exist in loose store),
- abbreviated object IDs (length 4-39, must resolve uniquely),
- direct refs (
HEAD,refs/...), - DWIM branch/tag/remote names (
name->refs/heads/name, etc.), - peeling suffixes:
^{},^{object},^{commit}.
ยงErrors
Returns Error::ObjectNotFound or Error::InvalidRef when resolution
fails.
Split spec at a .. range operator, avoiding the three-dot symmetric-diff form.
Returns (left, right) where either side may be empty (..HEAD, HEAD.., ..).