libgit2

git_treebuilder_insert

Version:

Add or update an entry to the builder

Insert a new entry for filename in the builder with the given attributes.

If an entry named filename already exists, its attributes will be updated with the given ones.

The optional pointer out can be used to retrieve a pointer to the newly created/updated entry. Pass NULL if you do not need it. The pointer may not be valid past the next operation in this builder. Duplicate the entry if you want to keep it.

By default the entry that you are inserting will be checked for validity; that it exists in the object database and is of the correct type. If you do not want this behavior, set the GIT_OPT_ENABLE_STRICT_OBJECT_CREATION library option to false.

Signature

int git_treebuilder_insert(const git_tree_entry **out, git_treebuilder *bld, const char *filename, const git_oid *id, git_filemode_t filemode);

Parameters

In
out

Pointer to store the entry (optional)

In
bld

Tree builder

const char *
In
filename

Filename of the entry

In
id

SHA1 oid of the entry

In
filemode

Folder attributes of the entry. This parameter must be valued with one of the following entries: 0040000, 0100644, 0100755, 0120000 or 0160000.

Returns

int

0 or an error code

Versions