Tags

A tag is a name that is assigned to a build or object.

# Tag a build.
$ tg tag foo bld_deadbeef
# Tag an object.
$ tg tag foo fil_deadbeef
# Get the build or object for a tag.
$ tg tag get foo
fil_deadbeef

Any tag is also a valid reference, so it can be used in imports, and as the argument to commands like tg get, tg build, tg run, and more.

$ tg run ripgrep

Tags are hierarchical with components separated by slashes. This makes it convenient to organize them according to match the needs of your organization. Tags also have support for version constraints using common operators like ^, =, ~, etc.

$ tg tag list foo
foo/bar/1.0.0
foo/bar/1.1.0
foo/bar/1.2.0
$ tg tag get foo/^1
foo/1.2.0
$ tg tag get foo/^1,<1.2
foo/1.1.0