n2020  Help: tag

The "tag" command:

Usage: fossil tag SUBCOMMAND ...

Run various subcommands to control tags and properties.

fossil tag add ?OPTIONS? TAGNAME CHECK-IN ?VALUE?

Add a new tag or property to CHECK-IN. The tag will be usable instead of a CHECK-IN in commands such as update and merge. If the --propagate flag is present, the tag value propagates to all descendants of CHECK-IN

Options:

--raw
Raw tag name.
--propagate
Propagating tag.
--date-override DATETIME
Set date and time added.
--user-override USER
Name USER when adding the tag.
--dryrun|-n
Display the tag text, but do not actually insert it into the database.

The --date-override and --user-override options support importing history from other SCM systems. DATETIME has the form 'YYYY-MMM-DD HH:MM:SS'.

fossil tag cancel ?--raw? TAGNAME CHECK-IN

Remove the tag TAGNAME from CHECK-IN, and also remove the propagation of the tag to any descendants. Use the the --dryrun or -n options to see what would have happened.

Options:

--raw
Raw tag name.
--date-override DATETIME
Set date and time deleted.
--user-override USER
Name USER when deleting the tag.
--dryrun|-n
Display the control artifact, but do not insert it into the database.

fossil tag find ?OPTIONS? TAGNAME

List all objects that use TAGNAME. TYPE can be "ci" for check-ins or "e" for events. The limit option limits the number of results to the given value.

Options:

--raw
Raw tag name.
-t|--type TYPE
One of "ci", or "e".
-n|--limit N
Limit to N results.

fossil tag list|ls ?OPTIONS? ?CHECK-IN?

List all tags, or if CHECK-IN is supplied, list all tags and their values for CHECK-IN. The tagtype option takes one of: propagated, singleton, cancel.

Options:

--raw
List tags raw names of tags
--tagtype TYPE
List only tags of type TYPE
-v|--inverse
Inverse the meaning of --tagtype TYPE.

The option --raw allows the manipulation of all types of tags used for various internal purposes in fossil. It also shows "cancel" tags for the "find" and "list" subcommands. You should not use this option to make changes unless you are sure what you are doing.

If you need to use a tagname that might be confused with a hexadecimal baseline or artifact ID, you can explicitly disambiguate it by prefixing it with "tag:". For instance:

fossil update decaf

will be taken as an artifact or baseline ID and fossil will probably complain that no such revision was found. However

fossil update tag:decaf

will assume that "decaf" is a tag/branch name.