libgit2

git_tag_create

Version:

Create a new tag in the repository from an object

A new reference will also be created pointing to this tag object. If force is true and a reference already exists with the given name, it'll be replaced.

The message will not be cleaned up. This can be achieved through git_message_prettify().

The tag name will be checked for validity. You must avoid the characters '~', '^', ':', '
', '?', '[', and '*', and the sequences ".." and "@{" which have special meaning to revparse.

Signature

int git_tag_create(git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message, int force);

Parameters

In
oid

Pointer where to store the OID of the newly created tag. If the tag already exists, this parameter will be the oid of the existing tag, and the function will return a GIT_EEXISTS error code.

In
repo

Repository where to store the tag

const char *
In
tag_name

Name for the tag; this name is validated for consistency. It should also not conflict with an already existing tag name

In
target

Object to which this tag points. This object must belong to the given repo.

In
tagger

Signature of the tagger for this tag, and of the tagging time

const char *
In
message

Full message for this tag

int
In
force

Overwrite existing references

Returns

int

0 on success, GIT_EINVALIDSPEC or an error code A tag object is written to the ODB, and a proper reference is written in the /refs/tags folder, pointing to it

Versions