id = "cvs"
name = "CVS"
homepage = "https://www.nongnu.org/cvs/"
description = "Concurrent Versions System."
executables = ["cvs"]
[dotfiles]
paths = ["~/.cvsrc"]
exclude = []
secret = []
[commands]
format = 1
label = "CVS global options"
description = "Global options that go before the cvs command. Use the update and commit forms for those jobs; checkout, import and server options are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = true, short_bundles = false }
[[commands.source]]
id = "man"
kind = "manual"
url = "https://manpages.debian.org/unstable/cvs/cvs.1.en.html"
revision = "Debian unstable cvs(1)"
evidence = '''
-d cvs_root_directory
Use cvs_root_directory as the root directory pathname of the repository. Overrides the setting of the $CVSROOT environment variable.
-n
Do not change any files. Attempt to execute the cvs_command, but only to issue reports
-q
Cause the command to be somewhat quiet; informational messages, such as reports of recursion through subdirectories, are suppressed.
-z level
Request compression level for network traffic.
'''
[[commands.field]]
id = "root"
label = "Repository root"
type = "string"
option = ["-d"]
sources = ["man"]
[[commands.field]]
id = "dry_run"
label = "Do not change files"
type = "boolean"
option = ["-n"]
sources = ["man"]
[[commands.field]]
id = "quiet"
label = "Quiet"
type = "boolean"
option = ["-q"]
sources = ["man"]
[[commands.field]]
id = "compression"
label = "Compression level"
description = "0 disables compression; 1 to 9 trade speed for compression."
type = "integer"
option = ["-z"]
sources = ["man"]
[[commands.task]]
id = "remote"
label = "Remote repository, compressed"
fields = ["root", "quiet", "compression"]
required = ["root"]
set = { compression = [6] }
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["root", "quiet", "compression", "dry_run"]
[[commands.subcommand]]
path = ["update"]
label = "Update working copy"
description = "Bring the working directory up to date. Merge, keyword and output-diversion options are left out."
[[commands.subcommand.source]]
id = "man"
kind = "manual"
url = "https://manpages.debian.org/unstable/cvs/cvs.1.en.html"
revision = "Debian unstable cvs(1)"
evidence = '''
-D date_spec
Use the most recent revision no later than date_spec.
-l
Local; run only in current working directory, rather than recursing through subdirectories.
-P
Prune empty directories.
-r tag
Use the revision specified by the tag argument
'''
[[commands.subcommand.field]]
id = "date"
label = "Revision date"
type = "string"
option = ["-D"]
sources = ["man"]
[[commands.subcommand.field]]
id = "tag"
label = "Tag or revision"
type = "string"
option = ["-r"]
sources = ["man"]
[[commands.subcommand.field]]
id = "local"
label = "Current directory only"
type = "boolean"
option = ["-l"]
sources = ["man"]
[[commands.subcommand.field]]
id = "prune"
label = "Prune empty directories"
type = "boolean"
option = ["-P"]
sources = ["man"]
[[commands.subcommand.task]]
id = "update"
label = "Update"
fields = ["local", "prune"]
required = []
set = { prune = [true] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["local", "prune", "tag", "date"]