id = "pijul"
name = "Pijul"
homepage = "https://pijul.org"
description = "A distributed version control system built on a mathematically sound theory of patches."
executables = ["pijul"]
[dotfiles]
paths = [
"[appData]/pijul/config.toml",
"[appData]/pijul/identities/*/identity.toml",
]
exclude = []
secret = ["[appData]/pijul/identities/*/secret_key.json"]
[commands]
format = 1
label = "Pijul"
description = "Record changes and move them between repositories. Channels, remotes, diff, log and unrecord are left out."
quality = "ai-draft"
base = "fig:pijul"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand]]
path = ["record"]
label = "Record a change"
description = "Create a change from the working copy."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "message"
label = "Message"
type = "string"
option = ["--message", "-m"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "all"
label = "Record all paths"
type = "boolean"
option = ["--all", "-a"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "author"
label = "Author"
type = "string"
option = ["--author"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "channel"
label = "Channel"
type = "string"
option = ["--channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "ignore_missing"
label = "Ignore missing files"
type = "boolean"
option = ["--ignore-missing"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "amend"
label = "Amend change"
type = "string"
option = ["--amend"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "prefixes"
label = "Paths"
type = "string"
position = 0
multiple = true
sources = ["fig"]
[[commands.subcommand.task]]
id = "record"
label = "Record everything"
set = { all = [true] }
fields = ["message", "all", "author", "channel"]
required = ["message"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["message", "all", "author", "channel"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["ignore_missing", "amend", "prefixes"]
[[commands.subcommand]]
path = ["clone"]
label = "Clone a repository"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "remote"
label = "Remote"
type = "string"
position = 0
sources = ["fig"]
[[commands.subcommand.field]]
id = "target"
label = "Target path"
type = "string"
position = 1
sources = ["fig"]
[[commands.subcommand.field]]
id = "channel"
label = "Channel"
type = "string"
option = ["--channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "change"
label = "Single change"
type = "string"
option = ["--change"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "state"
label = "State"
type = "string"
option = ["--state"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "partial_path"
label = "Only this path"
type = "string"
option = ["--path"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "insecure"
label = "Skip certificate check"
type = "boolean"
option = ["-k"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "clone"
label = "Clone"
fields = ["remote", "target", "channel", "change", "state", "partial_path", "insecure"]
required = ["remote"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["remote", "target", "channel"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["change", "state", "partial_path", "insecure"]
[[commands.subcommand]]
path = ["init"]
label = "Initialise a repository"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "path"
label = "Directory"
type = "path"
position = 0
path = { kind = "directory", role = "output" }
sources = ["fig"]
[[commands.subcommand.field]]
id = "kind"
label = "Project kind"
type = "string"
option = ["--kind", "-k"]
suggestions = [{ value = "rust", label = "rust" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "channel"
label = "Channel"
type = "string"
option = ["--channel"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "init"
label = "Initialise"
fields = ["path", "kind", "channel"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["path", "kind", "channel"]
[[commands.subcommand]]
path = ["push"]
label = "Push changes"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "remote"
label = "Remote"
type = "string"
position = 0
sources = ["fig"]
[[commands.subcommand.field]]
id = "all"
label = "Push all changes"
type = "boolean"
option = ["--all", "-a"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "from_channel"
label = "From channel"
type = "string"
option = ["--from-channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "to_channel"
label = "To channel"
type = "string"
option = ["--to-channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "only_path"
label = "Only this path"
type = "string"
option = ["--path"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "push"
label = "Push all"
set = { all = [true] }
fields = ["remote", "all", "from_channel", "to_channel", "only_path"]
required = ["remote"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["remote", "all", "from_channel", "to_channel", "only_path"]
[[commands.subcommand]]
path = ["pull"]
label = "Pull changes"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/pijul.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "remote"
label = "Remote"
type = "string"
position = 0
sources = ["fig"]
[[commands.subcommand.field]]
id = "all"
label = "Pull all changes"
type = "boolean"
option = ["--all", "-a"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "from_channel"
label = "From channel"
type = "string"
option = ["--from-channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "to_channel"
label = "To channel"
type = "string"
option = ["--to-channel"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "full"
label = "Download full changes"
type = "boolean"
option = ["--full"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "pull"
label = "Pull all"
set = { all = [true] }
fields = ["remote", "all", "from_channel", "to_channel", "full"]
required = ["remote"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["remote", "all", "from_channel", "to_channel", "full"]