libgit2

git_blob_create_from_stream

Version:

Create a stream to write a new blob into the object database.

This function may need to buffer the data on disk and will in general not be the right choice if you know the size of the data to write. If you have data in memory, use git_blob_create_from_buffer(). If you do not, but know the size of the contents (and don't want/need to perform filtering), use git_odb_open_wstream().

Don't close this stream yourself but pass it to git_blob_create_from_stream_commit() to commit the write to the object db and get the object id.

If the hintpath parameter is filled, it will be used to determine what git filters should be applied to the object before it is written to the object database.

Signature

int git_blob_create_from_stream(git_writestream **out, git_repository *repo, const char *hintpath);

Parameters

Out
out

the stream into which to write

In
repo

Repository where the blob will be written. This repository can be bare or not.

const char *
In
hintpath

If not NULL, will be used to select data filters to apply onto the content of the blob to be created.

Returns

int

0 or error code

Versions