dolthub/dolt

`ExistingRefError.Error()` omits the ref name and type

Ouverte

#11 434 ouverte le 6 août 2026

 (0 commentaire) (0 réaction) (0 personne assignée)Go (429 forks)batch import
bad error messagegood first issueversion control

Métriques du dépôt

Stars
 (15 227 étoiles)
Métriques de merge PR
 (Merge moyen 2j 21h) (58 PRs mergées en 30 j)

Description

doltdb.ExistingRefError is returned when a caller-provided name collides with an existing ref. Its Error() explicitly returns a "already exists", a bare string.

https://github.com/dolthub/dolt/blob/56fc3f4f292598b644df4397d5ef1799a5883c07/go/libraries/doltcore/doltdb/errors.go#L158-L162

The type carries a Ref field that identifies the conflict. Branch creation already recovers this detail out of band, but tag and workspaces do not.

Error() should include the ref, for example: ref 'refs/heads/x' already exists. Updating 'Error()` will change the message tag and workspace callers and test assert against, so they'll have to be updated with their own wrappers.

Guide contributeur