Files
iris-context/commands/rust/pijul.go
VERSE ebde9ba68f refactor(commands): separate commands and its core into two folders (#32)
- I think it would be better if one for commands only, one for the spec
handling core logic so people won't be confused by the core logic inside
the commands folder (cleaner I guess)
- Regen docs
2026-07-05 11:27:30 +07:00

78 lines
4.7 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package rust
import (
"github.com/versenilvis/iris/spec"
)
func init() {
spec.Register(&spec.Spec{
Name: "pijul",
Description: "Adds a path to the tree",
Subcommands: []spec.Subcommand{
{Name: "add", Description: "Adds a path to the tree"},
{Name: "PATHS", Description: "Paths to add to the internal tree"},
{Name: "apply", Description: "Applies changes to a channel"},
{Name: "archive", Description: "Creates an archive of the repository"},
{Name: "change", Description: "Shows information about a particular change"},
{Name: "HASH", Description: "The hash of the change to show, or an unambiguous prefix thereof"},
{Name: "channel", Description: "Manages different channels"},
{Name: "delete", Description: "Delete a channel. The channel must not be the current channel"},
{Name: "help", Description: "Print this message or the help of the given subcommand(s)"},
{Name: "new", Description: "Create a new, empty channel"},
{Name: "rename", Description: "Rename a channel"},
{Name: "switch", Description: "Switch to a channel. There must not be unrecorded changes in the working copy"},
{Name: "clone", Description: "Clones an existing pijul repository"},
{Name: "REMOTE", Description: "Clone this remote"},
{Name: "credit", Description: "Shows which change last affected each line of the given file(s)"},
{Name: "FILE", Description: "The file to annotate"},
{Name: "diff", Description: "Shows difference between two channels/changes"},
{Name: "fork", Description: "Create a new channel"},
{Name: "TO", Description: "The name of the new channel"},
{Name: "init", Description: "Initializes an empty pijul repository"},
{Name: "PATH", Description: "Path where the repository should be initialized"},
{Name: "log", Description: "Show the entire log of changes"},
{Name: "pull", Description: "Pulls changes from a remote upstream"},
{Name: "FROM", Description: "Pulls from this remote"},
{Name: "CHANGES", Description: "Pull changes from the local repository, not necessarily from a channel"},
{Name: "push", Description: "Pushes changes to a remote upstream"},
{Name: "record", Description: "Creates a new change"},
{Name: "PREFIXES", Description: "Paths in which to record the changes"},
{Name: "remote", Description: "Manages remote repositories"},
{Name: "FILES", Description: "Only reset these files"},
{Name: "unrecord", Description: "Unrecords a list of changes"},
{Name: "CHANGE_ID", Description: "The hash of a change (unambiguous prefixes are accepted)"},
},
Options: []spec.Option{
{Name: "-f", Description: "Print help information"},
{Name: "-r", Description: "Applies changes to a channel"},
{Name: "--channel", Description: "Apply change to this channel"},
{Name: "--deps-only", Description: "Print help information"},
{Name: "--repository", Description: "Creates an archive of the repository"},
{Name: "--change", Description: "Apply these changes after switching to the channel"},
{Name: "-h", Description: "Print help information"},
{Name: "-k", Description: "Do not check certificates (HTTPS remotes only, this option might be dangerous)"},
{Name: "-o", Description: "Name of the output file"},
{Name: "--prefix", Description: "Append this path in front of each path inside the archive"},
{Name: "--remote", Description: "Ask the remote to send an archive"},
{Name: "--umask", Description: "Append this path in front of each path inside the archive"},
{Name: "--path", Description: "Clone this path only"},
{Name: "--state", Description: "Clone this state"},
{Name: "--json", Description: "Output the diff in JSON format instead of the default change text format"},
{Name: "--tag", Description: "Include the untracked files"},
{Name: "--description", Description: "Include full change description in the output"},
{Name: "--hash-only", Description: "Only show the change hashes"},
{Name: "--limit", Description: "Output at most this many changes"},
{Name: "--offset", Description: "Start after this many changes"},
{Name: "--output-format", Description: "Include state identifiers in the output"},
{Name: "-a", Description: "Pull all changes"},
{Name: "--full", Description: "Download full changes, even when not necessary"},
{Name: "--to-channel", Description: "Push to this remote channel instead of the remote’s default channel"},
{Name: "--amend", Description: "Amend this change instead of creating a new change"},
{Name: "--author", Description: "Set the author field"},
{Name: "--ignore-missing", Description: "Ignore missing (deleted) files"},
{Name: "-m", Description: "Set the change message"},
{Name: "--working-copy", Description: "Manages remote repositories"},
},
})
}