Skip to main content

Module vcs

Module vcs 

Source
Expand description

Version-control (“Git for Data”) use cases.

Sits on top of the MVCC snapshot manager and persists commit metadata in the red_* collections declared in crate::application::vcs_collections. Mirrors the git command surface: commit, branch, checkout, merge, cherry-pick, revert, reset, log, diff, status, tag.

Designed to mirror the Graph/Query use-case pattern: thin struct parameterised over a RuntimeVcsPort trait implemented by RedDBRuntime. No storage logic lives here — only validation and delegation.

Structs§

Author
CheckoutInput
Commit
Conflict
CreateBranchInput
CreateCommitInput
CreateTagInput
Diff
DiffEntry
A single entity-level change between two commits.
DiffInput
LogInput
LogRange
MergeInput
MergeOpts
MergeOutcome
Result of a merge operation. Non-empty conflicts means the merge is paused — user must resolve shadow docs in red_conflicts before committing.
Ref
ResetInput
Status
StatusInput
VcsUseCases

Enums§

AsOfSpec
CheckoutTarget
DiffChange
MergeStrategy
RefKind
ResetMode

Type Aliases§

CommitHash
A commit hash. 64-char lowercase hex (SHA-256 truncated or full).
RefName
A full ref name like refs/heads/main or refs/tags/v1.0.