Artifact d0f5a4ea9947af46c811ed38aad56e79ffdab5181ccc17859cf580dc67419d9c:
- File
docs/site/content/docs/reference/sdk/cli/api.md
— part of check-in
[d1016bd2ef]
at
2026-04-26 08:12:25
on branch trunk
— site(landing): SVG architecture diagram + SDK refresh (#7)
* site(landing): SVG architecture diagram + SDK regen
- Replace §04 ASCII diagram with an SVG mirroring the dagnats style: three columns (callers / core / plugins), ember flow arrows with CALLS / DELEGATE / EVENTS / PERSIST labels, bottom box for .fossil (SQLite). Picks up the layout's existing .diagram CSS with no new styles. - Refresh gomarkdoc-generated SDK pages — they had drifted from current Go doc comments since the original generation.
* docs(site): drop redundant body H1s from frontmatter pages
Each of the four moved docs (architecture, extension-points, migration-from-fossil, testing) and the two hand-written driver _index pages had a body '# Title' that duplicated their frontmatter 'title:'. Hextra renders both, producing the visible doubled headline. Removing the body H1 leaves Hextra's frontmatter-driven page heading as the single source.
SDK api.md pages from gomarkdoc are unaffected — they have no frontmatter, so Hextra promotes their body H1 to the page title without duplication.
* site(landing): bump version refs to v0.4.2 (user: [email protected], size: 56983) [annotate] [blame] [check-ins using]
<!-- Code generated by gomarkdoc. DO NOT EDIT --> # cli ```go import "github.com/danmestas/libfossil/cli" ``` ## Index - [type Globals](<#Globals>) - [func \(g \*Globals\) OpenRepo\(\) \(\*libfossil.Repo, error\)](<#Globals.OpenRepo>) - [type RepoAddCmd](<#RepoAddCmd>) - [func \(c \*RepoAddCmd\) Run\(g \*Globals\) error](<#RepoAddCmd.Run>) - [type RepoAnnotateCmd](<#RepoAnnotateCmd>) - [func \(c \*RepoAnnotateCmd\) Run\(g \*Globals\) error](<#RepoAnnotateCmd.Run>) - [type RepoBisectBadCmd](<#RepoBisectBadCmd>) - [func \(c \*RepoBisectBadCmd\) Run\(g \*Globals\) error](<#RepoBisectBadCmd.Run>) - [type RepoBisectCmd](<#RepoBisectCmd>) - [type RepoBisectGoodCmd](<#RepoBisectGoodCmd>) - [func \(c \*RepoBisectGoodCmd\) Run\(g \*Globals\) error](<#RepoBisectGoodCmd.Run>) - [type RepoBisectLsCmd](<#RepoBisectLsCmd>) - [func \(c \*RepoBisectLsCmd\) Run\(g \*Globals\) error](<#RepoBisectLsCmd.Run>) - [type RepoBisectNextCmd](<#RepoBisectNextCmd>) - [func \(c \*RepoBisectNextCmd\) Run\(g \*Globals\) error](<#RepoBisectNextCmd.Run>) - [type RepoBisectResetCmd](<#RepoBisectResetCmd>) - [func \(c \*RepoBisectResetCmd\) Run\(g \*Globals\) error](<#RepoBisectResetCmd.Run>) - [type RepoBisectSkipCmd](<#RepoBisectSkipCmd>) - [func \(c \*RepoBisectSkipCmd\) Run\(g \*Globals\) error](<#RepoBisectSkipCmd.Run>) - [type RepoBisectStatusCmd](<#RepoBisectStatusCmd>) - [func \(c \*RepoBisectStatusCmd\) Run\(g \*Globals\) error](<#RepoBisectStatusCmd.Run>) - [type RepoBlameCmd](<#RepoBlameCmd>) - [type RepoBranchCloseCmd](<#RepoBranchCloseCmd>) - [func \(c \*RepoBranchCloseCmd\) Run\(g \*Globals\) error](<#RepoBranchCloseCmd.Run>) - [type RepoBranchCmd](<#RepoBranchCmd>) - [type RepoBranchLsCmd](<#RepoBranchLsCmd>) - [func \(c \*RepoBranchLsCmd\) Run\(g \*Globals\) error](<#RepoBranchLsCmd.Run>) - [type RepoBranchNewCmd](<#RepoBranchNewCmd>) - [func \(c \*RepoBranchNewCmd\) Run\(g \*Globals\) error](<#RepoBranchNewCmd.Run>) - [type RepoCatCmd](<#RepoCatCmd>) - [func \(c \*RepoCatCmd\) Run\(g \*Globals\) error](<#RepoCatCmd.Run>) - [type RepoCiCmd](<#RepoCiCmd>) - [func \(c \*RepoCiCmd\) Run\(g \*Globals\) error](<#RepoCiCmd.Run>) - [type RepoCloneCmd](<#RepoCloneCmd>) - [func \(c \*RepoCloneCmd\) Run\(g \*Globals\) error](<#RepoCloneCmd.Run>) - [type RepoCmd](<#RepoCmd>) - [type RepoCoCmd](<#RepoCoCmd>) - [func \(c \*RepoCoCmd\) Run\(g \*Globals\) error](<#RepoCoCmd.Run>) - [type RepoConfigCmd](<#RepoConfigCmd>) - [type RepoConfigGetCmd](<#RepoConfigGetCmd>) - [func \(c \*RepoConfigGetCmd\) Run\(g \*Globals\) error](<#RepoConfigGetCmd.Run>) - [type RepoConfigLsCmd](<#RepoConfigLsCmd>) - [func \(c \*RepoConfigLsCmd\) Run\(g \*Globals\) error](<#RepoConfigLsCmd.Run>) - [type RepoConfigSetCmd](<#RepoConfigSetCmd>) - [func \(c \*RepoConfigSetCmd\) Run\(g \*Globals\) error](<#RepoConfigSetCmd.Run>) - [type RepoConflictsCmd](<#RepoConflictsCmd>) - [type RepoConflictsExtractCmd](<#RepoConflictsExtractCmd>) - [func \(c \*RepoConflictsExtractCmd\) Run\(g \*Globals\) error](<#RepoConflictsExtractCmd.Run>) - [type RepoConflictsLsCmd](<#RepoConflictsLsCmd>) - [func \(c \*RepoConflictsLsCmd\) Run\(g \*Globals\) error](<#RepoConflictsLsCmd.Run>) - [type RepoConflictsMergeCmd](<#RepoConflictsMergeCmd>) - [func \(c \*RepoConflictsMergeCmd\) Run\(g \*Globals\) error](<#RepoConflictsMergeCmd.Run>) - [type RepoConflictsPickCmd](<#RepoConflictsPickCmd>) - [func \(c \*RepoConflictsPickCmd\) Run\(g \*Globals\) error](<#RepoConflictsPickCmd.Run>) - [type RepoConflictsShowCmd](<#RepoConflictsShowCmd>) - [func \(c \*RepoConflictsShowCmd\) Run\(g \*Globals\) error](<#RepoConflictsShowCmd.Run>) - [type RepoDeltaApplyCmd](<#RepoDeltaApplyCmd>) - [func \(c \*RepoDeltaApplyCmd\) Run\(g \*Globals\) error](<#RepoDeltaApplyCmd.Run>) - [type RepoDeltaCmd](<#RepoDeltaCmd>) - [type RepoDeltaCreateCmd](<#RepoDeltaCreateCmd>) - [func \(c \*RepoDeltaCreateCmd\) Run\(g \*Globals\) error](<#RepoDeltaCreateCmd.Run>) - [type RepoDiffCmd](<#RepoDiffCmd>) - [func \(c \*RepoDiffCmd\) Run\(g \*Globals\) error](<#RepoDiffCmd.Run>) - [type RepoExtractCmd](<#RepoExtractCmd>) - [func \(c \*RepoExtractCmd\) Run\(g \*Globals\) error](<#RepoExtractCmd.Run>) - [type RepoHashCmd](<#RepoHashCmd>) - [func \(c \*RepoHashCmd\) Run\(g \*Globals\) error](<#RepoHashCmd.Run>) - [type RepoInfoCmd](<#RepoInfoCmd>) - [func \(c \*RepoInfoCmd\) Run\(g \*Globals\) error](<#RepoInfoCmd.Run>) - [type RepoInviteCmd](<#RepoInviteCmd>) - [func \(c \*RepoInviteCmd\) Run\(g \*Globals\) error](<#RepoInviteCmd.Run>) - [type RepoLsCmd](<#RepoLsCmd>) - [func \(c \*RepoLsCmd\) Run\(g \*Globals\) error](<#RepoLsCmd.Run>) - [type RepoMergeCmd](<#RepoMergeCmd>) - [func \(c \*RepoMergeCmd\) Run\(g \*Globals\) error](<#RepoMergeCmd.Run>) - [type RepoMergeResolveCmd](<#RepoMergeResolveCmd>) - [func \(c \*RepoMergeResolveCmd\) Run\(g \*Globals\) error](<#RepoMergeResolveCmd.Run>) - [type RepoNewCmd](<#RepoNewCmd>) - [func \(c \*RepoNewCmd\) Run\(g \*Globals\) error](<#RepoNewCmd.Run>) - [type RepoOpenCmd](<#RepoOpenCmd>) - [func \(c \*RepoOpenCmd\) Run\(g \*Globals\) error](<#RepoOpenCmd.Run>) - [type RepoQueryCmd](<#RepoQueryCmd>) - [func \(c \*RepoQueryCmd\) Run\(g \*Globals\) error](<#RepoQueryCmd.Run>) - [type RepoRedoCmd](<#RepoRedoCmd>) - [func \(c \*RepoRedoCmd\) Run\(g \*Globals\) error](<#RepoRedoCmd.Run>) - [type RepoRenameCmd](<#RepoRenameCmd>) - [func \(c \*RepoRenameCmd\) Run\(g \*Globals\) error](<#RepoRenameCmd.Run>) - [type RepoResolveCmd](<#RepoResolveCmd>) - [func \(c \*RepoResolveCmd\) Run\(g \*Globals\) error](<#RepoResolveCmd.Run>) - [type RepoRevertCmd](<#RepoRevertCmd>) - [func \(c \*RepoRevertCmd\) Run\(g \*Globals\) error](<#RepoRevertCmd.Run>) - [type RepoRmCmd](<#RepoRmCmd>) - [func \(c \*RepoRmCmd\) Run\(g \*Globals\) error](<#RepoRmCmd.Run>) - [type RepoSchemaAddCmd](<#RepoSchemaAddCmd>) - [func \(c \*RepoSchemaAddCmd\) Run\(g \*Globals\) error](<#RepoSchemaAddCmd.Run>) - [type RepoSchemaCmd](<#RepoSchemaCmd>) - [type RepoSchemaListCmd](<#RepoSchemaListCmd>) - [func \(c \*RepoSchemaListCmd\) Run\(g \*Globals\) error](<#RepoSchemaListCmd.Run>) - [type RepoSchemaRemoveCmd](<#RepoSchemaRemoveCmd>) - [func \(c \*RepoSchemaRemoveCmd\) Run\(g \*Globals\) error](<#RepoSchemaRemoveCmd.Run>) - [type RepoSchemaShowCmd](<#RepoSchemaShowCmd>) - [func \(c \*RepoSchemaShowCmd\) Run\(g \*Globals\) error](<#RepoSchemaShowCmd.Run>) - [type RepoStashApplyCmd](<#RepoStashApplyCmd>) - [func \(c \*RepoStashApplyCmd\) Run\(g \*Globals\) error](<#RepoStashApplyCmd.Run>) - [type RepoStashClearCmd](<#RepoStashClearCmd>) - [func \(c \*RepoStashClearCmd\) Run\(g \*Globals\) error](<#RepoStashClearCmd.Run>) - [type RepoStashCmd](<#RepoStashCmd>) - [type RepoStashDropCmd](<#RepoStashDropCmd>) - [func \(c \*RepoStashDropCmd\) Run\(g \*Globals\) error](<#RepoStashDropCmd.Run>) - [type RepoStashLsCmd](<#RepoStashLsCmd>) - [func \(c \*RepoStashLsCmd\) Run\(g \*Globals\) error](<#RepoStashLsCmd.Run>) - [type RepoStashPopCmd](<#RepoStashPopCmd>) - [func \(c \*RepoStashPopCmd\) Run\(g \*Globals\) error](<#RepoStashPopCmd.Run>) - [type RepoStashSaveCmd](<#RepoStashSaveCmd>) - [func \(c \*RepoStashSaveCmd\) Run\(g \*Globals\) error](<#RepoStashSaveCmd.Run>) - [type RepoStatusCmd](<#RepoStatusCmd>) - [func \(c \*RepoStatusCmd\) Run\(g \*Globals\) error](<#RepoStatusCmd.Run>) - [type RepoTagAddCmd](<#RepoTagAddCmd>) - [func \(c \*RepoTagAddCmd\) Run\(g \*Globals\) error](<#RepoTagAddCmd.Run>) - [type RepoTagCmd](<#RepoTagCmd>) - [type RepoTagLsCmd](<#RepoTagLsCmd>) - [func \(c \*RepoTagLsCmd\) Run\(g \*Globals\) error](<#RepoTagLsCmd.Run>) - [type RepoTimelineCmd](<#RepoTimelineCmd>) - [func \(c \*RepoTimelineCmd\) Run\(g \*Globals\) error](<#RepoTimelineCmd.Run>) - [type RepoUVCmd](<#RepoUVCmd>) - [type RepoUVDeleteCmd](<#RepoUVDeleteCmd>) - [func \(c \*RepoUVDeleteCmd\) Run\(g \*Globals\) error](<#RepoUVDeleteCmd.Run>) - [type RepoUVGetCmd](<#RepoUVGetCmd>) - [func \(c \*RepoUVGetCmd\) Run\(g \*Globals\) error](<#RepoUVGetCmd.Run>) - [type RepoUVLsCmd](<#RepoUVLsCmd>) - [func \(c \*RepoUVLsCmd\) Run\(g \*Globals\) error](<#RepoUVLsCmd.Run>) - [type RepoUVPutCmd](<#RepoUVPutCmd>) - [func \(c \*RepoUVPutCmd\) Run\(g \*Globals\) error](<#RepoUVPutCmd.Run>) - [type RepoUndoCmd](<#RepoUndoCmd>) - [func \(c \*RepoUndoCmd\) Run\(g \*Globals\) error](<#RepoUndoCmd.Run>) - [type RepoUserCmd](<#RepoUserCmd>) - [type RepoVerifyCmd](<#RepoVerifyCmd>) - [func \(c \*RepoVerifyCmd\) Run\(g \*Globals\) error](<#RepoVerifyCmd.Run>) - [type RepoWikiCmd](<#RepoWikiCmd>) - [type RepoWikiExportCmd](<#RepoWikiExportCmd>) - [func \(c \*RepoWikiExportCmd\) Run\(g \*Globals\) error](<#RepoWikiExportCmd.Run>) - [type RepoWikiLsCmd](<#RepoWikiLsCmd>) - [func \(c \*RepoWikiLsCmd\) Run\(g \*Globals\) error](<#RepoWikiLsCmd.Run>) - [type UserAddCmd](<#UserAddCmd>) - [func \(c \*UserAddCmd\) Run\(g \*Globals\) error](<#UserAddCmd.Run>) - [type UserListCmd](<#UserListCmd>) - [func \(c \*UserListCmd\) Run\(g \*Globals\) error](<#UserListCmd.Run>) - [type UserPasswdCmd](<#UserPasswdCmd>) - [func \(c \*UserPasswdCmd\) Run\(g \*Globals\) error](<#UserPasswdCmd.Run>) - [type UserRmCmd](<#UserRmCmd>) - [func \(c \*UserRmCmd\) Run\(g \*Globals\) error](<#UserRmCmd.Run>) - [type UserUpdateCmd](<#UserUpdateCmd>) - [func \(c \*UserUpdateCmd\) Run\(g \*Globals\) error](<#UserUpdateCmd.Run>) <a name="Globals"></a> ## type [Globals](<https://github.com/danmestas/libfossil/blob/main/cli/shared.go#L15-L18>) Globals holds flags shared by all CLI commands. ```go type Globals struct { Repo string `short:"R" help:"Path to repository file" type:"path"` Verbose bool `short:"v" help:"Verbose output"` } ``` <a name="Globals.OpenRepo"></a> ### func \(\*Globals\) [OpenRepo](<https://github.com/danmestas/libfossil/blob/main/cli/shared.go#L22>) ```go func (g *Globals) OpenRepo() (*libfossil.Repo, error) ``` OpenRepo opens a Fossil repository using the handle API. If Repo is empty, it searches for a .fossil file or .fslckout checkout. <a name="RepoAddCmd"></a> ## type [RepoAddCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_add.go#L12-L15>) RepoAddCmd stages files for addition in the checkout database. ```go type RepoAddCmd struct { Files []string `arg:"" required:"" help:"Files to stage for addition"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoAddCmd.Run"></a> ### func \(\*RepoAddCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_add.go#L17>) ```go func (c *RepoAddCmd) Run(g *Globals) error ``` <a name="RepoAnnotateCmd"></a> ## type [RepoAnnotateCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_annotate.go#L10-L13>) RepoAnnotateCmd annotates file lines with version history. ```go type RepoAnnotateCmd struct { File string `arg:"" required:"" help:"File to annotate"` Version string `help:"Starting version (default: tip)"` } ``` <a name="RepoAnnotateCmd.Run"></a> ### func \(\*RepoAnnotateCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_annotate.go#L15>) ```go func (c *RepoAnnotateCmd) Run(g *Globals) error ``` <a name="RepoBisectBadCmd"></a> ## type [RepoBisectBadCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L27-L30>) RepoBisectBadCmd marks a version as bad. ```go type RepoBisectBadCmd struct { Version string `arg:"" optional:"" help:"Version to mark (default: current checkout)"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectBadCmd.Run"></a> ### func \(\*RepoBisectBadCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L32>) ```go func (c *RepoBisectBadCmd) Run(g *Globals) error ``` <a name="RepoBisectCmd"></a> ## type [RepoBisectCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L6-L14>) RepoBisectCmd groups binary search operations. ```go type RepoBisectCmd struct { Good RepoBisectGoodCmd `cmd:"" help:"Mark version as good"` Bad RepoBisectBadCmd `cmd:"" help:"Mark version as bad"` Next RepoBisectNextCmd `cmd:"" help:"Check out midpoint version"` Skip RepoBisectSkipCmd `cmd:"" help:"Skip current version"` Reset RepoBisectResetCmd `cmd:"" help:"Clear bisect state"` Ls RepoBisectLsCmd `cmd:"" help:"Show bisect path"` Status RepoBisectStatusCmd `cmd:"" help:"Show bisect state"` } ``` <a name="RepoBisectGoodCmd"></a> ## type [RepoBisectGoodCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L17-L20>) RepoBisectGoodCmd marks a version as good. ```go type RepoBisectGoodCmd struct { Version string `arg:"" optional:"" help:"Version to mark (default: current checkout)"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectGoodCmd.Run"></a> ### func \(\*RepoBisectGoodCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L22>) ```go func (c *RepoBisectGoodCmd) Run(g *Globals) error ``` <a name="RepoBisectLsCmd"></a> ## type [RepoBisectLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L65-L67>) RepoBisectLsCmd shows the bisect path. ```go type RepoBisectLsCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectLsCmd.Run"></a> ### func \(\*RepoBisectLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L69>) ```go func (c *RepoBisectLsCmd) Run(g *Globals) error ``` <a name="RepoBisectNextCmd"></a> ## type [RepoBisectNextCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L47-L49>) RepoBisectNextCmd checks out the bisect midpoint version. ```go type RepoBisectNextCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectNextCmd.Run"></a> ### func \(\*RepoBisectNextCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L51>) ```go func (c *RepoBisectNextCmd) Run(g *Globals) error ``` <a name="RepoBisectResetCmd"></a> ## type [RepoBisectResetCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L56-L58>) RepoBisectResetCmd clears bisect state. ```go type RepoBisectResetCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectResetCmd.Run"></a> ### func \(\*RepoBisectResetCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L60>) ```go func (c *RepoBisectResetCmd) Run(g *Globals) error ``` <a name="RepoBisectSkipCmd"></a> ## type [RepoBisectSkipCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L37-L40>) RepoBisectSkipCmd skips the current version. ```go type RepoBisectSkipCmd struct { Version string `arg:"" optional:"" help:"Version to skip (default: current checkout)"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectSkipCmd.Run"></a> ### func \(\*RepoBisectSkipCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L42>) ```go func (c *RepoBisectSkipCmd) Run(g *Globals) error ``` <a name="RepoBisectStatusCmd"></a> ## type [RepoBisectStatusCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L74-L76>) RepoBisectStatusCmd shows bisect state. ```go type RepoBisectStatusCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoBisectStatusCmd.Run"></a> ### func \(\*RepoBisectStatusCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_bisect.go#L78>) ```go func (c *RepoBisectStatusCmd) Run(g *Globals) error ``` <a name="RepoBlameCmd"></a> ## type [RepoBlameCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_annotate.go#L47-L49>) RepoBlameCmd is an alias for annotate. ```go type RepoBlameCmd struct { RepoAnnotateCmd } ``` <a name="RepoBranchCloseCmd"></a> ## type [RepoBranchCloseCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L170-L173>) RepoBranchCloseCmd closes a branch. ```go type RepoBranchCloseCmd struct { Name string `arg:"" help:"Branch name to close"` User string `help:"User for control artifacts (default: OS username)"` } ``` <a name="RepoBranchCloseCmd.Run"></a> ### func \(\*RepoBranchCloseCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L175>) ```go func (c *RepoBranchCloseCmd) Run(g *Globals) error ``` <a name="RepoBranchCmd"></a> ## type [RepoBranchCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L15-L19>) RepoBranchCmd groups branch operations. ```go type RepoBranchCmd struct { Ls RepoBranchLsCmd `cmd:"" help:"List branches"` New RepoBranchNewCmd `cmd:"" help:"Create new branch"` Close RepoBranchCloseCmd `cmd:"" help:"Close a branch"` } ``` <a name="RepoBranchLsCmd"></a> ## type [RepoBranchLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L22-L25>) RepoBranchLsCmd lists branches. ```go type RepoBranchLsCmd struct { Closed bool `help:"Show only closed branches"` All bool `help:"Show all branches (open and closed)"` } ``` <a name="RepoBranchLsCmd.Run"></a> ### func \(\*RepoBranchLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L27>) ```go func (c *RepoBranchLsCmd) Run(g *Globals) error ``` <a name="RepoBranchNewCmd"></a> ## type [RepoBranchNewCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L94-L99>) RepoBranchNewCmd creates a new branch. ```go type RepoBranchNewCmd struct { Name string `arg:"" help:"Branch name"` From string `help:"Parent version (default: tip)"` Message string `short:"m" help:"Checkin comment"` User string `help:"Checkin user (default: OS username)"` } ``` <a name="RepoBranchNewCmd.Run"></a> ### func \(\*RepoBranchNewCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_branch.go#L101>) ```go func (c *RepoBranchNewCmd) Run(g *Globals) error ``` <a name="RepoCatCmd"></a> ## type [RepoCatCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_cat.go#L13-L16>) RepoCatCmd outputs the content of an artifact. ```go type RepoCatCmd struct { Artifact string `arg:"" help:"Artifact UUID or prefix"` Raw bool `help:"Output raw blob (no delta expansion)"` } ``` <a name="RepoCatCmd.Run"></a> ### func \(\*RepoCatCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_cat.go#L18>) ```go func (c *RepoCatCmd) Run(g *Globals) error ``` <a name="RepoCiCmd"></a> ## type [RepoCiCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_ci.go#L13-L19>) RepoCiCmd creates a new checkin \(commit\). ```go type RepoCiCmd struct { Message string `short:"m" required:"" help:"Checkin comment"` Files []string `arg:"" required:"" help:"Files to checkin"` User string `help:"Checkin user (default: OS username)"` Parent string `help:"Parent version UUID (default: tip)"` Branch string `help:"Branch name for this checkin"` } ``` <a name="RepoCiCmd.Run"></a> ### func \(\*RepoCiCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_ci.go#L21>) ```go func (c *RepoCiCmd) Run(g *Globals) error ``` <a name="RepoCloneCmd"></a> ## type [RepoCloneCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_clone.go#L13-L19>) RepoCloneCmd clones a remote Fossil repository. ```go type RepoCloneCmd struct { URL string `arg:"" optional:"" help:"Remote Fossil server URL"` Path string `arg:"" optional:"" help:"Local path for new repository file"` User string `short:"u" help:"Username for clone auth"` Pass string `short:"p" help:"Password for clone auth"` Invite string `help:"Invite token (from fossil invite)"` } ``` <a name="RepoCloneCmd.Run"></a> ### func \(\*RepoCloneCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_clone.go#L21>) ```go func (c *RepoCloneCmd) Run(g *Globals) error ``` <a name="RepoCmd"></a> ## type [RepoCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo.go#L5-L44>) RepoCmd is the top\-level command group for repository operations. Embed this in your CLI struct alongside Globals for a complete fossil CLI. ```go type RepoCmd struct { New RepoNewCmd `cmd:"" help:"Create a new repository"` Clone RepoCloneCmd `cmd:"" help:"Clone a remote repository"` Ci RepoCiCmd `cmd:"" help:"Checkin file changes"` Co RepoCoCmd `cmd:"" help:"Checkout a version"` Ls RepoLsCmd `cmd:"" help:"List files in a version"` Timeline RepoTimelineCmd `cmd:"" help:"Show repository history"` Cat RepoCatCmd `cmd:"" help:"Output artifact content"` Info RepoInfoCmd `cmd:"" help:"Repository statistics"` Hash RepoHashCmd `cmd:"" help:"Hash files (SHA1 or SHA3)"` Delta RepoDeltaCmd `cmd:"" help:"Delta create/apply operations"` Config RepoConfigCmd `cmd:"" help:"Repository configuration"` Query RepoQueryCmd `cmd:"" help:"Execute SQL against repository"` Verify RepoVerifyCmd `cmd:"" help:"Verify repository integrity"` Resolve RepoResolveCmd `cmd:"" help:"Resolve symbolic name to UUID"` Extract RepoExtractCmd `cmd:"" help:"Extract files from a version"` Wiki RepoWikiCmd `cmd:"" help:"Wiki page operations"` Tag RepoTagCmd `cmd:"" help:"Tag operations"` Open RepoOpenCmd `cmd:"" help:"Open a checkout in a directory"` Status RepoStatusCmd `cmd:"" help:"Show working directory changes"` Add RepoAddCmd `cmd:"" help:"Stage files for addition"` Rm RepoRmCmd `cmd:"" help:"Stage files for removal"` Rename RepoRenameCmd `cmd:"" help:"Rename a tracked file"` Revert RepoRevertCmd `cmd:"" help:"Undo staging changes"` Diff RepoDiffCmd `cmd:"" help:"Show changes vs a version"` Merge RepoMergeCmd `cmd:"" help:"Merge a divergent version"` Conflicts RepoConflictsCmd `cmd:"" help:"List/manage unresolved conflicts"` MarkResolved RepoMergeResolveCmd `cmd:"" name:"mark-resolved" help:"Mark a conflict as resolved"` Undo RepoUndoCmd `cmd:"" help:"Undo last operation"` Redo RepoRedoCmd `cmd:"" help:"Redo undone operation"` Stash RepoStashCmd `cmd:"" help:"Stash working changes"` Bisect RepoBisectCmd `cmd:"" help:"Binary search for bugs"` Annotate RepoAnnotateCmd `cmd:"" help:"Annotate file lines with version history"` Blame RepoBlameCmd `cmd:"" help:"Alias for annotate"` Branch RepoBranchCmd `cmd:"" help:"Branch operations"` UV RepoUVCmd `cmd:"" name:"uv" help:"Unversioned file operations"` Schema RepoSchemaCmd `cmd:"" help:"Synced table schema operations"` User RepoUserCmd `cmd:"" help:"User management"` Invite RepoInviteCmd `cmd:"" help:"Generate invite token for a user"` } ``` <a name="RepoCoCmd"></a> ## type [RepoCoCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_co.go#L13-L17>) RepoCoCmd checks out a version to the working directory. ```go type RepoCoCmd struct { Version string `arg:"" optional:"" help:"Version to checkout (default: tip)"` Dir string `short:"d" help:"Output directory (default: current dir)" default:"."` Force bool `help:"Overwrite existing files"` } ``` <a name="RepoCoCmd.Run"></a> ### func \(\*RepoCoCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_co.go#L19>) ```go func (c *RepoCoCmd) Run(g *Globals) error ``` <a name="RepoConfigCmd"></a> ## type [RepoConfigCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L6-L10>) RepoConfigCmd groups configuration operations. ```go type RepoConfigCmd struct { Ls RepoConfigLsCmd `cmd:"" help:"List all config entries"` Get RepoConfigGetCmd `cmd:"" help:"Get a config value"` Set RepoConfigSetCmd `cmd:"" help:"Set a config value"` } ``` <a name="RepoConfigGetCmd"></a> ## type [RepoConfigGetCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L38-L40>) RepoConfigGetCmd gets a single config value. ```go type RepoConfigGetCmd struct { Key string `arg:"" help:"Config key to get"` } ``` <a name="RepoConfigGetCmd.Run"></a> ### func \(\*RepoConfigGetCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L42>) ```go func (c *RepoConfigGetCmd) Run(g *Globals) error ``` <a name="RepoConfigLsCmd"></a> ## type [RepoConfigLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L13>) RepoConfigLsCmd lists all config entries. ```go type RepoConfigLsCmd struct{} ``` <a name="RepoConfigLsCmd.Run"></a> ### func \(\*RepoConfigLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L15>) ```go func (c *RepoConfigLsCmd) Run(g *Globals) error ``` <a name="RepoConfigSetCmd"></a> ## type [RepoConfigSetCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L58-L61>) RepoConfigSetCmd sets a config value. ```go type RepoConfigSetCmd struct { Key string `arg:"" help:"Config key"` Value string `arg:"" help:"Config value"` } ``` <a name="RepoConfigSetCmd.Run"></a> ### func \(\*RepoConfigSetCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_config.go#L63>) ```go func (c *RepoConfigSetCmd) Run(g *Globals) error ``` <a name="RepoConflictsCmd"></a> ## type [RepoConflictsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L16-L23>) RepoConflictsCmd groups conflict management operations. ```go type RepoConflictsCmd struct { Ls RepoConflictsLsCmd `cmd:"" default:"1" help:"List all conflicts"` Show RepoConflictsShowCmd `cmd:"" help:"Show all versions of a conflicted file"` Pick RepoConflictsPickCmd `cmd:"" help:"Resolve by picking one version"` Merge RepoConflictsMergeCmd `cmd:"" help:"Resolve by re-merging with a different strategy"` Extract RepoConflictsExtractCmd `cmd:"" help:"Extract all versions to disk for manual editing"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoConflictsExtractCmd"></a> ## type [RepoConflictsExtractCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L287-L290>) RepoConflictsExtractCmd extracts all versions to disk for manual editing. ```go type RepoConflictsExtractCmd struct { File string `arg:"" help:"Conflicted file to extract"` Dir string `short:"d" help:"Output directory" default:"."` } ``` <a name="RepoConflictsExtractCmd.Run"></a> ### func \(\*RepoConflictsExtractCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L292>) ```go func (c *RepoConflictsExtractCmd) Run(g *Globals) error ``` <a name="RepoConflictsLsCmd"></a> ## type [RepoConflictsLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L26>) RepoConflictsLsCmd lists all conflicts. ```go type RepoConflictsLsCmd struct{} ``` <a name="RepoConflictsLsCmd.Run"></a> ### func \(\*RepoConflictsLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L28>) ```go func (c *RepoConflictsLsCmd) Run(g *Globals) error ``` <a name="RepoConflictsMergeCmd"></a> ## type [RepoConflictsMergeCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L234-L238>) RepoConflictsMergeCmd resolves a conflict by re\-merging with a specified strategy. ```go type RepoConflictsMergeCmd struct { File string `arg:"" help:"Conflicted file to re-merge"` Strategy string `help:"Strategy to use" default:"three-way"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoConflictsMergeCmd.Run"></a> ### func \(\*RepoConflictsMergeCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L240>) ```go func (c *RepoConflictsMergeCmd) Run(g *Globals) error ``` <a name="RepoConflictsPickCmd"></a> ## type [RepoConflictsPickCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L187-L193>) RepoConflictsPickCmd resolves a conflict by picking one version. ```go type RepoConflictsPickCmd struct { File string `arg:"" help:"Conflicted file to resolve"` Local bool `help:"Keep local version" xor:"version"` Remote bool `help:"Keep remote version" xor:"version"` Base bool `help:"Revert to base version" xor:"version"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoConflictsPickCmd.Run"></a> ### func \(\*RepoConflictsPickCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L195>) ```go func (c *RepoConflictsPickCmd) Run(g *Globals) error ``` <a name="RepoConflictsShowCmd"></a> ## type [RepoConflictsShowCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L155-L157>) RepoConflictsShowCmd shows all versions of a conflicted file. ```go type RepoConflictsShowCmd struct { File string `arg:"" help:"Conflicted file to show"` } ``` <a name="RepoConflictsShowCmd.Run"></a> ### func \(\*RepoConflictsShowCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_conflicts.go#L159>) ```go func (c *RepoConflictsShowCmd) Run(g *Globals) error ``` <a name="RepoDeltaApplyCmd"></a> ## type [RepoDeltaApplyCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_delta.go#L43-L47>) RepoDeltaApplyCmd applies a delta to a source file. ```go type RepoDeltaApplyCmd struct { Source string `arg:"" help:"Source (original) file"` Delta string `arg:"" help:"Delta file"` Output string `short:"o" help:"Output file (default: stdout)"` } ``` <a name="RepoDeltaApplyCmd.Run"></a> ### func \(\*RepoDeltaApplyCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_delta.go#L49>) ```go func (c *RepoDeltaApplyCmd) Run(g *Globals) error ``` <a name="RepoDeltaCmd"></a> ## type [RepoDeltaCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_delta.go#L11-L14>) RepoDeltaCmd groups delta create/apply operations. ```go type RepoDeltaCmd struct { Create RepoDeltaCreateCmd `cmd:"" help:"Create a delta between two files"` Apply RepoDeltaApplyCmd `cmd:"" help:"Apply a delta to a source file"` } ``` <a name="RepoDeltaCreateCmd"></a> ## type [RepoDeltaCreateCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_delta.go#L17-L21>) RepoDeltaCreateCmd creates a delta between two files. ```go type RepoDeltaCreateCmd struct { Source string `arg:"" help:"Source (original) file"` Target string `arg:"" help:"Target (new) file"` Output string `short:"o" help:"Output file (default: stdout)"` } ``` <a name="RepoDeltaCreateCmd.Run"></a> ### func \(\*RepoDeltaCreateCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_delta.go#L23>) ```go func (c *RepoDeltaCreateCmd) Run(g *Globals) error ``` <a name="RepoDiffCmd"></a> ## type [RepoDiffCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_diff.go#L16-L20>) RepoDiffCmd shows changes in the working directory vs a repository version. ```go type RepoDiffCmd struct { Version string `arg:"" optional:"" help:"Version to diff against (default: tip)"` Dir string `short:"d" help:"Working directory to compare" default:"."` Unified int `short:"U" help:"Lines of context" default:"3"` } ``` <a name="RepoDiffCmd.Run"></a> ### func \(\*RepoDiffCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_diff.go#L22>) ```go func (c *RepoDiffCmd) Run(g *Globals) error ``` <a name="RepoExtractCmd"></a> ## type [RepoExtractCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_extract.go#L13-L17>) RepoExtractCmd extracts files from a version. ```go type RepoExtractCmd struct { Version string `help:"Version to extract from (default: tip)"` Files []string `arg:"" optional:"" help:"Files to extract (default: all)"` Dir string `short:"d" help:"Output directory" default:"."` } ``` <a name="RepoExtractCmd.Run"></a> ### func \(\*RepoExtractCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_extract.go#L19>) ```go func (c *RepoExtractCmd) Run(g *Globals) error ``` <a name="RepoHashCmd"></a> ## type [RepoHashCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_hash.go#L11-L14>) RepoHashCmd hashes files using SHA1 or SHA3\-256. ```go type RepoHashCmd struct { Files []string `arg:"" required:"" help:"Files to hash"` SHA3 bool `name:"sha3" help:"Use SHA3-256 instead of SHA1"` } ``` <a name="RepoHashCmd.Run"></a> ### func \(\*RepoHashCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_hash.go#L16>) ```go func (c *RepoHashCmd) Run(g *Globals) error ``` <a name="RepoInfoCmd"></a> ## type [RepoInfoCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_info.go#L6>) RepoInfoCmd shows repository statistics. ```go type RepoInfoCmd struct{} ``` <a name="RepoInfoCmd.Run"></a> ### func \(\*RepoInfoCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_info.go#L8>) ```go func (c *RepoInfoCmd) Run(g *Globals) error ``` <a name="RepoInviteCmd"></a> ## type [RepoInviteCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_invite.go#L12-L17>) RepoInviteCmd generates an invite token for a new user. ```go type RepoInviteCmd struct { Login string `arg:"" help:"Username for the invitee"` Cap string `help:"Capability string (e.g. oi)" required:""` URL string `help:"Sync URL to embed in token" default:""` TTL time.Duration `help:"Token time-to-live (e.g. 24h)" default:"0"` } ``` <a name="RepoInviteCmd.Run"></a> ### func \(\*RepoInviteCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_invite.go#L19>) ```go func (c *RepoInviteCmd) Run(g *Globals) error ``` <a name="RepoLsCmd"></a> ## type [RepoLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_ls.go#L6-L9>) RepoLsCmd lists files in a version. ```go type RepoLsCmd struct { Version string `arg:"" optional:"" help:"Version to list (default: tip)"` Long bool `short:"l" help:"Show sizes and hashes"` } ``` <a name="RepoLsCmd.Run"></a> ### func \(\*RepoLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_ls.go#L11>) ```go func (c *RepoLsCmd) Run(g *Globals) error ``` <a name="RepoMergeCmd"></a> ## type [RepoMergeCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_merge.go#L17-L22>) RepoMergeCmd merges a divergent version into the current checkout. ```go type RepoMergeCmd struct { Version string `arg:"" help:"Version to merge into current checkout"` Strategy string `help:"Override merge strategy for all files"` DryRun bool `help:"Show what would be merged without writing"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoMergeCmd.Run"></a> ### func \(\*RepoMergeCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_merge.go#L24>) ```go func (c *RepoMergeCmd) Run(g *Globals) error ``` <a name="RepoMergeResolveCmd"></a> ## type [RepoMergeResolveCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_merge_resolve.go#L10-L13>) RepoMergeResolveCmd marks a file conflict as resolved. ```go type RepoMergeResolveCmd struct { File string `arg:"" help:"File to mark as resolved"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoMergeResolveCmd.Run"></a> ### func \(\*RepoMergeResolveCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_merge_resolve.go#L15>) ```go func (c *RepoMergeResolveCmd) Run(g *Globals) error ``` <a name="RepoNewCmd"></a> ## type [RepoNewCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_new.go#L10-L13>) RepoNewCmd creates a new Fossil repository. ```go type RepoNewCmd struct { Path string `arg:"" help:"Path for new repository file"` User string `help:"Default user name" default:""` } ``` <a name="RepoNewCmd.Run"></a> ### func \(\*RepoNewCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_new.go#L15>) ```go func (c *RepoNewCmd) Run(g *Globals) error ``` <a name="RepoOpenCmd"></a> ## type [RepoOpenCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_open.go#L11-L13>) RepoOpenCmd opens a checkout in a directory, creating the .fslckout database. ```go type RepoOpenCmd struct { Dir string `arg:"" optional:"" help:"Checkout directory (default: current dir)" default:"."` } ``` <a name="RepoOpenCmd.Run"></a> ### func \(\*RepoOpenCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_open.go#L15>) ```go func (c *RepoOpenCmd) Run(g *Globals) error ``` <a name="RepoQueryCmd"></a> ## type [RepoQueryCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_query.go#L9-L11>) RepoQueryCmd executes raw SQL against the repository database. ```go type RepoQueryCmd struct { SQL string `arg:"" help:"SQL query to execute"` } ``` <a name="RepoQueryCmd.Run"></a> ### func \(\*RepoQueryCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_query.go#L13>) ```go func (c *RepoQueryCmd) Run(g *Globals) error ``` <a name="RepoRedoCmd"></a> ## type [RepoRedoCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_undo.go#L18-L20>) RepoRedoCmd re\-applies the last undone operation. ```go type RepoRedoCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoRedoCmd.Run"></a> ### func \(\*RepoRedoCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_undo.go#L22>) ```go func (c *RepoRedoCmd) Run(g *Globals) error ``` <a name="RepoRenameCmd"></a> ## type [RepoRenameCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_rename.go#L6-L10>) RepoRenameCmd renames a tracked file in the checkout. ```go type RepoRenameCmd struct { From string `arg:"" help:"Current file name"` To string `arg:"" help:"New file name"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoRenameCmd.Run"></a> ### func \(\*RepoRenameCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_rename.go#L12>) ```go func (c *RepoRenameCmd) Run(g *Globals) error ``` <a name="RepoResolveCmd"></a> ## type [RepoResolveCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_resolve.go#L6-L8>) RepoResolveCmd resolves a symbolic name to UUID and RID. ```go type RepoResolveCmd struct { Name string `arg:"" help:"Symbolic name, UUID, or prefix to resolve (e.g. trunk, tip, UUID prefix)"` } ``` <a name="RepoResolveCmd.Run"></a> ### func \(\*RepoResolveCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_resolve.go#L10>) ```go func (c *RepoResolveCmd) Run(g *Globals) error ``` <a name="RepoRevertCmd"></a> ## type [RepoRevertCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_revert.go#L6-L9>) RepoRevertCmd undoes staging changes in the checkout. ```go type RepoRevertCmd struct { Files []string `arg:"" optional:"" help:"Files to revert (default: all)"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoRevertCmd.Run"></a> ### func \(\*RepoRevertCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_revert.go#L11>) ```go func (c *RepoRevertCmd) Run(g *Globals) error ``` <a name="RepoRmCmd"></a> ## type [RepoRmCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_rm.go#L6-L9>) RepoRmCmd stages files for removal from the checkout. ```go type RepoRmCmd struct { Files []string `arg:"" required:"" help:"Files to stage for removal"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoRmCmd.Run"></a> ### func \(\*RepoRmCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_rm.go#L11>) ```go func (c *RepoRmCmd) Run(g *Globals) error ``` <a name="RepoSchemaAddCmd"></a> ## type [RepoSchemaAddCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L22-L26>) RepoSchemaAddCmd registers a new synced table. ```go type RepoSchemaAddCmd struct { Name string `arg:"" help:"Table name (without x_ prefix)"` Columns string `required:"" help:"Column defs: name:type[:pk],... (e.g. peer_id:text:pk,addr:text)"` Conflict string `default:"mtime-wins" enum:"self-write,mtime-wins,owner-write" help:"Conflict strategy"` } ``` <a name="RepoSchemaAddCmd.Run"></a> ### func \(\*RepoSchemaAddCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L28>) ```go func (c *RepoSchemaAddCmd) Run(g *Globals) error ``` <a name="RepoSchemaCmd"></a> ## type [RepoSchemaCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L14-L19>) RepoSchemaCmd groups synced table schema operations. ```go type RepoSchemaCmd struct { Add RepoSchemaAddCmd `cmd:"" help:"Register a new synced table"` List RepoSchemaListCmd `cmd:"" help:"List registered synced tables"` Show RepoSchemaShowCmd `cmd:"" help:"Show table schema details"` Remove RepoSchemaRemoveCmd `cmd:"" help:"Remove a synced table registration"` } ``` <a name="RepoSchemaListCmd"></a> ## type [RepoSchemaListCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L60>) RepoSchemaListCmd lists registered synced tables. ```go type RepoSchemaListCmd struct{} ``` <a name="RepoSchemaListCmd.Run"></a> ### func \(\*RepoSchemaListCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L62>) ```go func (c *RepoSchemaListCmd) Run(g *Globals) error ``` <a name="RepoSchemaRemoveCmd"></a> ## type [RepoSchemaRemoveCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L133-L135>) RepoSchemaRemoveCmd removes a synced table registration. ```go type RepoSchemaRemoveCmd struct { Name string `arg:"" help:"Table name (without x_ prefix)"` } ``` <a name="RepoSchemaRemoveCmd.Run"></a> ### func \(\*RepoSchemaRemoveCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L137>) ```go func (c *RepoSchemaRemoveCmd) Run(g *Globals) error ``` <a name="RepoSchemaShowCmd"></a> ## type [RepoSchemaShowCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L93-L95>) RepoSchemaShowCmd shows table schema details. ```go type RepoSchemaShowCmd struct { Name string `arg:"" help:"Table name (without x_ prefix)"` } ``` <a name="RepoSchemaShowCmd.Run"></a> ### func \(\*RepoSchemaShowCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_schema.go#L97>) ```go func (c *RepoSchemaShowCmd) Run(g *Globals) error ``` <a name="RepoStashApplyCmd"></a> ## type [RepoStashApplyCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L45-L48>) RepoStashApplyCmd applies a stash entry without removing it. ```go type RepoStashApplyCmd struct { ID int64 `arg:"" optional:"" help:"Stash ID to apply (default: latest)"` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoStashApplyCmd.Run"></a> ### func \(\*RepoStashApplyCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L50>) ```go func (c *RepoStashApplyCmd) Run(g *Globals) error ``` <a name="RepoStashClearCmd"></a> ## type [RepoStashClearCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L98>) RepoStashClearCmd removes all stash entries. ```go type RepoStashClearCmd struct{} ``` <a name="RepoStashClearCmd.Run"></a> ### func \(\*RepoStashClearCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L100>) ```go func (c *RepoStashClearCmd) Run(g *Globals) error ``` <a name="RepoStashCmd"></a> ## type [RepoStashCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L6-L13>) RepoStashCmd groups stash operations. ```go type RepoStashCmd struct { Save RepoStashSaveCmd `cmd:"" help:"Stash working changes"` Pop RepoStashPopCmd `cmd:"" help:"Apply top stash and drop it"` Apply RepoStashApplyCmd `cmd:"" help:"Apply stash without dropping"` Ls RepoStashLsCmd `cmd:"" help:"List stash entries"` Drop RepoStashDropCmd `cmd:"" help:"Remove stash entry"` Clear RepoStashClearCmd `cmd:"" help:"Remove all stash entries"` } ``` <a name="RepoStashDropCmd"></a> ## type [RepoStashDropCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L84-L86>) RepoStashDropCmd removes a stash entry by ID. ```go type RepoStashDropCmd struct { ID int64 `arg:"" required:"" help:"Stash ID to drop"` } ``` <a name="RepoStashDropCmd.Run"></a> ### func \(\*RepoStashDropCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L88>) ```go func (c *RepoStashDropCmd) Run(g *Globals) error ``` <a name="RepoStashLsCmd"></a> ## type [RepoStashLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L60>) RepoStashLsCmd lists stash entries. ```go type RepoStashLsCmd struct{} ``` <a name="RepoStashLsCmd.Run"></a> ### func \(\*RepoStashLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L62>) ```go func (c *RepoStashLsCmd) Run(g *Globals) error ``` <a name="RepoStashPopCmd"></a> ## type [RepoStashPopCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L31-L33>) RepoStashPopCmd pops the top stash entry. ```go type RepoStashPopCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoStashPopCmd.Run"></a> ### func \(\*RepoStashPopCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L35>) ```go func (c *RepoStashPopCmd) Run(g *Globals) error ``` <a name="RepoStashSaveCmd"></a> ## type [RepoStashSaveCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L16-L19>) RepoStashSaveCmd saves working changes to the stash. ```go type RepoStashSaveCmd struct { Message string `short:"m" help:"Stash message" default:""` Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoStashSaveCmd.Run"></a> ### func \(\*RepoStashSaveCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_stash.go#L21>) ```go func (c *RepoStashSaveCmd) Run(g *Globals) error ``` <a name="RepoStatusCmd"></a> ## type [RepoStatusCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_status.go#L17-L19>) RepoStatusCmd shows working directory changes vs the tip version. ```go type RepoStatusCmd struct { Dir string `short:"d" help:"Checkout directory to scan" default:"."` } ``` <a name="RepoStatusCmd.Run"></a> ### func \(\*RepoStatusCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_status.go#L21>) ```go func (c *RepoStatusCmd) Run(g *Globals) error ``` <a name="RepoTagAddCmd"></a> ## type [RepoTagAddCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_tag.go#L54-L58>) RepoTagAddCmd adds a tag to an artifact. ```go type RepoTagAddCmd struct { Tag string `arg:"" help:"Tag name"` Value string `arg:"" optional:"" help:"Tag value (optional)"` Version string `help:"Version to tag (default: tip)"` } ``` <a name="RepoTagAddCmd.Run"></a> ### func \(\*RepoTagAddCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_tag.go#L60>) ```go func (c *RepoTagAddCmd) Run(g *Globals) error ``` <a name="RepoTagCmd"></a> ## type [RepoTagCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_tag.go#L6-L9>) RepoTagCmd groups tag operations. ```go type RepoTagCmd struct { Ls RepoTagLsCmd `cmd:"" help:"List tags on an artifact"` Add RepoTagAddCmd `cmd:"" help:"Add a tag to an artifact"` } ``` <a name="RepoTagLsCmd"></a> ## type [RepoTagLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_tag.go#L12-L14>) RepoTagLsCmd lists tags on an artifact. ```go type RepoTagLsCmd struct { Version string `arg:"" optional:"" help:"Version to list tags for (default: tip)"` } ``` <a name="RepoTagLsCmd.Run"></a> ### func \(\*RepoTagLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_tag.go#L16>) ```go func (c *RepoTagLsCmd) Run(g *Globals) error ``` <a name="RepoTimelineCmd"></a> ## type [RepoTimelineCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_timeline.go#L10-L12>) RepoTimelineCmd shows repository timeline/history. ```go type RepoTimelineCmd struct { Limit int `short:"n" default:"20" help:"Number of entries"` } ``` <a name="RepoTimelineCmd.Run"></a> ### func \(\*RepoTimelineCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_timeline.go#L14>) ```go func (c *RepoTimelineCmd) Run(g *Globals) error ``` <a name="RepoUVCmd"></a> ## type [RepoUVCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L10-L15>) RepoUVCmd groups unversioned file operations. ```go type RepoUVCmd struct { Ls RepoUVLsCmd `cmd:"" help:"List unversioned files"` Put RepoUVPutCmd `cmd:"" help:"Add or update an unversioned file"` Get RepoUVGetCmd `cmd:"" help:"Retrieve an unversioned file"` Delete RepoUVDeleteCmd `cmd:"" help:"Delete an unversioned file (creates tombstone)"` } ``` <a name="RepoUVDeleteCmd"></a> ## type [RepoUVDeleteCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L110-L112>) RepoUVDeleteCmd deletes an unversioned file \(creates a tombstone\). ```go type RepoUVDeleteCmd struct { Name string `arg:"" help:"Name of the unversioned file to delete"` } ``` <a name="RepoUVDeleteCmd.Run"></a> ### func \(\*RepoUVDeleteCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L114>) ```go func (c *RepoUVDeleteCmd) Run(g *Globals) error ``` <a name="RepoUVGetCmd"></a> ## type [RepoUVGetCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L79-L82>) RepoUVGetCmd retrieves an unversioned file. ```go type RepoUVGetCmd struct { Name string `arg:"" help:"Name of the unversioned file"` Output string `short:"o" help:"Output file (default: stdout)"` } ``` <a name="RepoUVGetCmd.Run"></a> ### func \(\*RepoUVGetCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L84>) ```go func (c *RepoUVGetCmd) Run(g *Globals) error ``` <a name="RepoUVLsCmd"></a> ## type [RepoUVLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L18>) RepoUVLsCmd lists unversioned files. ```go type RepoUVLsCmd struct{} ``` <a name="RepoUVLsCmd.Run"></a> ### func \(\*RepoUVLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L20>) ```go func (c *RepoUVLsCmd) Run(g *Globals) error ``` <a name="RepoUVPutCmd"></a> ## type [RepoUVPutCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L53-L56>) RepoUVPutCmd adds or updates an unversioned file. ```go type RepoUVPutCmd struct { Name string `arg:"" help:"Name of the unversioned file"` File string `arg:"" help:"Local file to upload"` } ``` <a name="RepoUVPutCmd.Run"></a> ### func \(\*RepoUVPutCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_uv.go#L58>) ```go func (c *RepoUVPutCmd) Run(g *Globals) error ``` <a name="RepoUndoCmd"></a> ## type [RepoUndoCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_undo.go#L4-L6>) RepoUndoCmd undoes the last checkout operation. ```go type RepoUndoCmd struct { Dir string `short:"d" help:"Checkout directory" default:"."` } ``` <a name="RepoUndoCmd.Run"></a> ### func \(\*RepoUndoCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_undo.go#L8>) ```go func (c *RepoUndoCmd) Run(g *Globals) error ``` <a name="RepoUserCmd"></a> ## type [RepoUserCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L12-L18>) RepoUserCmd groups user management operations. ```go type RepoUserCmd struct { Add UserAddCmd `cmd:"" help:"Create a new user"` List UserListCmd `cmd:"" help:"List all users"` Update UserUpdateCmd `cmd:"" help:"Update user capabilities"` Rm UserRmCmd `cmd:"" help:"Delete a user"` Passwd UserPasswdCmd `cmd:"" help:"Reset user password"` } ``` <a name="RepoVerifyCmd"></a> ## type [RepoVerifyCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_verify.go#L6>) RepoVerifyCmd verifies repository integrity. ```go type RepoVerifyCmd struct{} ``` <a name="RepoVerifyCmd.Run"></a> ### func \(\*RepoVerifyCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_verify.go#L8>) ```go func (c *RepoVerifyCmd) Run(g *Globals) error ``` <a name="RepoWikiCmd"></a> ## type [RepoWikiCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_wiki.go#L13-L16>) RepoWikiCmd groups wiki operations. ```go type RepoWikiCmd struct { Ls RepoWikiLsCmd `cmd:"" help:"List wiki pages"` Export RepoWikiExportCmd `cmd:"" help:"Export a wiki page"` } ``` <a name="RepoWikiExportCmd"></a> ## type [RepoWikiExportCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_wiki.go#L60-L63>) RepoWikiExportCmd exports a wiki page. ```go type RepoWikiExportCmd struct { Page string `arg:"" help:"Wiki page name or artifact UUID"` Output string `short:"o" help:"Output file (default: stdout)"` } ``` <a name="RepoWikiExportCmd.Run"></a> ### func \(\*RepoWikiExportCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_wiki.go#L65>) ```go func (c *RepoWikiExportCmd) Run(g *Globals) error ``` <a name="RepoWikiLsCmd"></a> ## type [RepoWikiLsCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_wiki.go#L19>) RepoWikiLsCmd lists wiki pages. ```go type RepoWikiLsCmd struct{} ``` <a name="RepoWikiLsCmd.Run"></a> ### func \(\*RepoWikiLsCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_wiki.go#L21>) ```go func (c *RepoWikiLsCmd) Run(g *Globals) error ``` <a name="UserAddCmd"></a> ## type [UserAddCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L21-L24>) UserAddCmd creates a new user. ```go type UserAddCmd struct { Login string `arg:"" help:"Username"` Cap string `help:"Capability string (e.g. oi)" required:""` } ``` <a name="UserAddCmd.Run"></a> ### func \(\*UserAddCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L26>) ```go func (c *UserAddCmd) Run(g *Globals) error ``` <a name="UserListCmd"></a> ## type [UserListCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L51>) UserListCmd lists all users. ```go type UserListCmd struct{} ``` <a name="UserListCmd.Run"></a> ### func \(\*UserListCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L53>) ```go func (c *UserListCmd) Run(g *Globals) error ``` <a name="UserPasswdCmd"></a> ## type [UserPasswdCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L111-L113>) UserPasswdCmd resets a user's password. ```go type UserPasswdCmd struct { Login string `arg:"" help:"Username"` } ``` <a name="UserPasswdCmd.Run"></a> ### func \(\*UserPasswdCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L115>) ```go func (c *UserPasswdCmd) Run(g *Globals) error ``` <a name="UserRmCmd"></a> ## type [UserRmCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L92-L94>) UserRmCmd deletes a user. ```go type UserRmCmd struct { Login string `arg:"" help:"Username"` } ``` <a name="UserRmCmd.Run"></a> ### func \(\*UserRmCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L96>) ```go func (c *UserRmCmd) Run(g *Globals) error ``` <a name="UserUpdateCmd"></a> ## type [UserUpdateCmd](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L72-L75>) UserUpdateCmd updates user capabilities. ```go type UserUpdateCmd struct { Login string `arg:"" help:"Username"` Cap string `help:"New capability string" required:""` } ``` <a name="UserUpdateCmd.Run"></a> ### func \(\*UserUpdateCmd\) [Run](<https://github.com/danmestas/libfossil/blob/main/cli/repo_user.go#L77>) ```go func (c *UserUpdateCmd) Run(g *Globals) error ``` Generated by [gomarkdoc](<https://github.com/princjef/gomarkdoc>)