<!-- 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

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

```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

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

```go
func (c *RepoAddCmd) Run(g *Globals) error
```



<a name="RepoAnnotateCmd"></a>
## type RepoAnnotateCmd

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

```go
func (c *RepoAnnotateCmd) Run(g *Globals) error
```



<a name="RepoBisectBadCmd"></a>
## type RepoBisectBadCmd

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

```go
func (c *RepoBisectBadCmd) Run(g *Globals) error
```



<a name="RepoBisectCmd"></a>
## type RepoBisectCmd

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

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

```go
func (c *RepoBisectGoodCmd) Run(g *Globals) error
```



<a name="RepoBisectLsCmd"></a>
## type RepoBisectLsCmd

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

```go
func (c *RepoBisectLsCmd) Run(g *Globals) error
```



<a name="RepoBisectNextCmd"></a>
## type RepoBisectNextCmd

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

```go
func (c *RepoBisectNextCmd) Run(g *Globals) error
```



<a name="RepoBisectResetCmd"></a>
## type RepoBisectResetCmd

RepoBisectResetCmd clears bisect state.

```go
type RepoBisectResetCmd struct {
    Dir string `short:"d" help:"Checkout directory" default:"."`
}
```

<a name="RepoBisectResetCmd.Run"></a>
### func \(\*RepoBisectResetCmd\) Run

```go
func (c *RepoBisectResetCmd) Run(g *Globals) error
```



<a name="RepoBisectSkipCmd"></a>
## type RepoBisectSkipCmd

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

```go
func (c *RepoBisectSkipCmd) Run(g *Globals) error
```



<a name="RepoBisectStatusCmd"></a>
## type RepoBisectStatusCmd

RepoBisectStatusCmd shows bisect state.

```go
type RepoBisectStatusCmd struct {
    Dir string `short:"d" help:"Checkout directory" default:"."`
}
```

<a name="RepoBisectStatusCmd.Run"></a>
### func \(\*RepoBisectStatusCmd\) Run

```go
func (c *RepoBisectStatusCmd) Run(g *Globals) error
```



<a name="RepoBlameCmd"></a>
## type RepoBlameCmd

RepoBlameCmd is an alias for annotate.

```go
type RepoBlameCmd struct {
    RepoAnnotateCmd
}
```

<a name="RepoBranchCloseCmd"></a>
## type RepoBranchCloseCmd

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

```go
func (c *RepoBranchCloseCmd) Run(g *Globals) error
```



<a name="RepoBranchCmd"></a>
## type RepoBranchCmd

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

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

```go
func (c *RepoBranchLsCmd) Run(g *Globals) error
```



<a name="RepoBranchNewCmd"></a>
## type RepoBranchNewCmd

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

```go
func (c *RepoBranchNewCmd) Run(g *Globals) error
```



<a name="RepoCatCmd"></a>
## type RepoCatCmd

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

```go
func (c *RepoCatCmd) Run(g *Globals) error
```



<a name="RepoCiCmd"></a>
## type RepoCiCmd

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

```go
func (c *RepoCiCmd) Run(g *Globals) error
```



<a name="RepoCloneCmd"></a>
## type RepoCloneCmd

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

```go
func (c *RepoCloneCmd) Run(g *Globals) error
```



<a name="RepoCmd"></a>
## type RepoCmd

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

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

```go
func (c *RepoCoCmd) Run(g *Globals) error
```



<a name="RepoConfigCmd"></a>
## type RepoConfigCmd

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

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

```go
func (c *RepoConfigGetCmd) Run(g *Globals) error
```



<a name="RepoConfigLsCmd"></a>
## type RepoConfigLsCmd

RepoConfigLsCmd lists all config entries.

```go
type RepoConfigLsCmd struct{}
```

<a name="RepoConfigLsCmd.Run"></a>
### func \(\*RepoConfigLsCmd\) Run

```go
func (c *RepoConfigLsCmd) Run(g *Globals) error
```



<a name="RepoConfigSetCmd"></a>
## type RepoConfigSetCmd

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

```go
func (c *RepoConfigSetCmd) Run(g *Globals) error
```



<a name="RepoConflictsCmd"></a>
## type RepoConflictsCmd

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

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

```go
func (c *RepoConflictsExtractCmd) Run(g *Globals) error
```



<a name="RepoConflictsLsCmd"></a>
## type RepoConflictsLsCmd

RepoConflictsLsCmd lists all conflicts.

```go
type RepoConflictsLsCmd struct{}
```

<a name="RepoConflictsLsCmd.Run"></a>
### func \(\*RepoConflictsLsCmd\) Run

```go
func (c *RepoConflictsLsCmd) Run(g *Globals) error
```



<a name="RepoConflictsMergeCmd"></a>
## type RepoConflictsMergeCmd

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

```go
func (c *RepoConflictsMergeCmd) Run(g *Globals) error
```



<a name="RepoConflictsPickCmd"></a>
## type RepoConflictsPickCmd

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

```go
func (c *RepoConflictsPickCmd) Run(g *Globals) error
```



<a name="RepoConflictsShowCmd"></a>
## type RepoConflictsShowCmd

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

```go
func (c *RepoConflictsShowCmd) Run(g *Globals) error
```



<a name="RepoDeltaApplyCmd"></a>
## type RepoDeltaApplyCmd

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

```go
func (c *RepoDeltaApplyCmd) Run(g *Globals) error
```



<a name="RepoDeltaCmd"></a>
## type RepoDeltaCmd

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

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

```go
func (c *RepoDeltaCreateCmd) Run(g *Globals) error
```



<a name="RepoDiffCmd"></a>
## type RepoDiffCmd

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

```go
func (c *RepoDiffCmd) Run(g *Globals) error
```



<a name="RepoExtractCmd"></a>
## type RepoExtractCmd

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

```go
func (c *RepoExtractCmd) Run(g *Globals) error
```



<a name="RepoHashCmd"></a>
## type RepoHashCmd

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

```go
func (c *RepoHashCmd) Run(g *Globals) error
```



<a name="RepoInfoCmd"></a>
## type RepoInfoCmd

RepoInfoCmd shows repository statistics.

```go
type RepoInfoCmd struct{}
```

<a name="RepoInfoCmd.Run"></a>
### func \(\*RepoInfoCmd\) Run

```go
func (c *RepoInfoCmd) Run(g *Globals) error
```



<a name="RepoInviteCmd"></a>
## type RepoInviteCmd

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

```go
func (c *RepoInviteCmd) Run(g *Globals) error
```



<a name="RepoLsCmd"></a>
## type RepoLsCmd

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

```go
func (c *RepoLsCmd) Run(g *Globals) error
```



<a name="RepoMergeCmd"></a>
## type RepoMergeCmd

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

```go
func (c *RepoMergeCmd) Run(g *Globals) error
```



<a name="RepoMergeResolveCmd"></a>
## type RepoMergeResolveCmd

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

```go
func (c *RepoMergeResolveCmd) Run(g *Globals) error
```



<a name="RepoNewCmd"></a>
## type RepoNewCmd

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

```go
func (c *RepoNewCmd) Run(g *Globals) error
```



<a name="RepoOpenCmd"></a>
## type RepoOpenCmd

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

```go
func (c *RepoOpenCmd) Run(g *Globals) error
```



<a name="RepoQueryCmd"></a>
## type RepoQueryCmd

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

```go
func (c *RepoQueryCmd) Run(g *Globals) error
```



<a name="RepoRedoCmd"></a>
## type RepoRedoCmd

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

```go
func (c *RepoRedoCmd) Run(g *Globals) error
```



<a name="RepoRenameCmd"></a>
## type RepoRenameCmd

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

```go
func (c *RepoRenameCmd) Run(g *Globals) error
```



<a name="RepoResolveCmd"></a>
## type RepoResolveCmd

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

```go
func (c *RepoResolveCmd) Run(g *Globals) error
```



<a name="RepoRevertCmd"></a>
## type RepoRevertCmd

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

```go
func (c *RepoRevertCmd) Run(g *Globals) error
```



<a name="RepoRmCmd"></a>
## type RepoRmCmd

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

```go
func (c *RepoRmCmd) Run(g *Globals) error
```



<a name="RepoSchemaAddCmd"></a>
## type RepoSchemaAddCmd

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

```go
func (c *RepoSchemaAddCmd) Run(g *Globals) error
```



<a name="RepoSchemaCmd"></a>
## type RepoSchemaCmd

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

RepoSchemaListCmd lists registered synced tables.

```go
type RepoSchemaListCmd struct{}
```

<a name="RepoSchemaListCmd.Run"></a>
### func \(\*RepoSchemaListCmd\) Run

```go
func (c *RepoSchemaListCmd) Run(g *Globals) error
```



<a name="RepoSchemaRemoveCmd"></a>
## type RepoSchemaRemoveCmd

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

```go
func (c *RepoSchemaRemoveCmd) Run(g *Globals) error
```



<a name="RepoSchemaShowCmd"></a>
## type RepoSchemaShowCmd

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

```go
func (c *RepoSchemaShowCmd) Run(g *Globals) error
```



<a name="RepoStashApplyCmd"></a>
## type RepoStashApplyCmd

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

```go
func (c *RepoStashApplyCmd) Run(g *Globals) error
```



<a name="RepoStashClearCmd"></a>
## type RepoStashClearCmd

RepoStashClearCmd removes all stash entries.

```go
type RepoStashClearCmd struct{}
```

<a name="RepoStashClearCmd.Run"></a>
### func \(\*RepoStashClearCmd\) Run

```go
func (c *RepoStashClearCmd) Run(g *Globals) error
```



<a name="RepoStashCmd"></a>
## type RepoStashCmd

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

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

```go
func (c *RepoStashDropCmd) Run(g *Globals) error
```



<a name="RepoStashLsCmd"></a>
## type RepoStashLsCmd

RepoStashLsCmd lists stash entries.

```go
type RepoStashLsCmd struct{}
```

<a name="RepoStashLsCmd.Run"></a>
### func \(\*RepoStashLsCmd\) Run

```go
func (c *RepoStashLsCmd) Run(g *Globals) error
```



<a name="RepoStashPopCmd"></a>
## type RepoStashPopCmd

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

```go
func (c *RepoStashPopCmd) Run(g *Globals) error
```



<a name="RepoStashSaveCmd"></a>
## type RepoStashSaveCmd

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

```go
func (c *RepoStashSaveCmd) Run(g *Globals) error
```



<a name="RepoStatusCmd"></a>
## type RepoStatusCmd

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

```go
func (c *RepoStatusCmd) Run(g *Globals) error
```



<a name="RepoTagAddCmd"></a>
## type RepoTagAddCmd

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

```go
func (c *RepoTagAddCmd) Run(g *Globals) error
```



<a name="RepoTagCmd"></a>
## type RepoTagCmd

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

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

```go
func (c *RepoTagLsCmd) Run(g *Globals) error
```



<a name="RepoTimelineCmd"></a>
## type RepoTimelineCmd

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

```go
func (c *RepoTimelineCmd) Run(g *Globals) error
```



<a name="RepoUVCmd"></a>
## type RepoUVCmd

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

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

```go
func (c *RepoUVDeleteCmd) Run(g *Globals) error
```



<a name="RepoUVGetCmd"></a>
## type RepoUVGetCmd

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

```go
func (c *RepoUVGetCmd) Run(g *Globals) error
```



<a name="RepoUVLsCmd"></a>
## type RepoUVLsCmd

RepoUVLsCmd lists unversioned files.

```go
type RepoUVLsCmd struct{}
```

<a name="RepoUVLsCmd.Run"></a>
### func \(\*RepoUVLsCmd\) Run

```go
func (c *RepoUVLsCmd) Run(g *Globals) error
```



<a name="RepoUVPutCmd"></a>
## type RepoUVPutCmd

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

```go
func (c *RepoUVPutCmd) Run(g *Globals) error
```



<a name="RepoUndoCmd"></a>
## type RepoUndoCmd

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

```go
func (c *RepoUndoCmd) Run(g *Globals) error
```



<a name="RepoUserCmd"></a>
## type RepoUserCmd

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

RepoVerifyCmd verifies repository integrity.

```go
type RepoVerifyCmd struct{}
```

<a name="RepoVerifyCmd.Run"></a>
### func \(\*RepoVerifyCmd\) Run

```go
func (c *RepoVerifyCmd) Run(g *Globals) error
```



<a name="RepoWikiCmd"></a>
## type RepoWikiCmd

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

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

```go
func (c *RepoWikiExportCmd) Run(g *Globals) error
```



<a name="RepoWikiLsCmd"></a>
## type RepoWikiLsCmd

RepoWikiLsCmd lists wiki pages.

```go
type RepoWikiLsCmd struct{}
```

<a name="RepoWikiLsCmd.Run"></a>
### func \(\*RepoWikiLsCmd\) Run

```go
func (c *RepoWikiLsCmd) Run(g *Globals) error
```



<a name="UserAddCmd"></a>
## type UserAddCmd

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

```go
func (c *UserAddCmd) Run(g *Globals) error
```



<a name="UserListCmd"></a>
## type UserListCmd

UserListCmd lists all users.

```go
type UserListCmd struct{}
```

<a name="UserListCmd.Run"></a>
### func \(\*UserListCmd\) Run

```go
func (c *UserListCmd) Run(g *Globals) error
```



<a name="UserPasswdCmd"></a>
## type UserPasswdCmd

UserPasswdCmd resets a user's password.

```go
type UserPasswdCmd struct {
    Login string `arg:"" help:"Username"`
}
```

<a name="UserPasswdCmd.Run"></a>
### func \(\*UserPasswdCmd\) Run

```go
func (c *UserPasswdCmd) Run(g *Globals) error
```



<a name="UserRmCmd"></a>
## type UserRmCmd

UserRmCmd deletes a user.

```go
type UserRmCmd struct {
    Login string `arg:"" help:"Username"`
}
```

<a name="UserRmCmd.Run"></a>
### func \(\*UserRmCmd\) Run

```go
func (c *UserRmCmd) Run(g *Globals) error
```



<a name="UserUpdateCmd"></a>
## type UserUpdateCmd

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

```go
func (c *UserUpdateCmd) Run(g *Globals) error
```



Generated by [gomarkdoc](<https://github.com/princjef/gomarkdoc>)
