Show / Hide Table of Contents

Enum git_libgit2_opt_t

Global library options. These are used to select which global option to seet or get and are used as the first argument when calling .

Namespace: Dogged.Native
Assembly: Dogged.Native.dll
Syntax
public enum git_libgit2_opt_t : int

Fields

Name Description
GIT_OPT_DISABLE_PACK_KEEP_FILE_CHECKS

This will cause .keep file existence checks to be skipped when accessing packfiles, which can help performance with remote filesystems.

opts(GIT_OPT_DISABLE_PACK_KEEP_FILE_CHECKS, int enabled);

GIT_OPT_ENABLE_CACHING

Enable or disable caching completely.

Because caches are repository-specific, disabling the cache cannot immediately clear all cached objects, but each cache will be cleared on the next attempt to update anything in it.

opts(GIT_OPT_ENABLE_CACHING, int enabled);

GIT_OPT_ENABLE_FSYNC_GITDIR

Enable synchronized writes of files in the gitdir using fsync (or the platform equivalent) to ensure that new object data is written to permanent storage, not simply cached. This defaults to disabled.

opts(GIT_OPT_ENABLE_FSYNC_GITDIR, int enabled);

GIT_OPT_ENABLE_OFS_DELTA
GIT_OPT_ENABLE_STRICT_HASH_VERIFICATION

Enable strict verification of object hashsums when reading objects from disk. This may impact performance due to an additional checksum calculation on each object. This defaults to enabled.

opts(GIT_OPT_ENABLE_STRICT_HASH_VERIFICATION, int enabled);

GIT_OPT_ENABLE_STRICT_OBJECT_CREATION

Enable strict input validation when creating new objects to ensure that all inputs to the new objects are valid. For example, when this is enabled, the parent(s) and tree inputs will be validated when creating a new commit. This defaults to enabled.

opts(GIT_OPT_ENABLE_STRICT_OBJECT_CREATION, int enabled);

GIT_OPT_ENABLE_STRICT_SYMBOLIC_REF_CREATION

Validate the target of a symbolic ref when creating it. For example, foobar is not a valid ref, therefore foobar is not a valid target for a symbolic ref by default, whereas refs/heads/foobar is. Disabling this bypasses validation so that an arbitrary strings such as foobar can be used for a symbolic ref target. This defaults to enabled.

opts(GIT_OPT_ENABLE_STRICT_SYMBOLIC_REF_CREATION, int enabled);

GIT_OPT_ENABLE_UNSAVED_INDEX_SAFETY

Ensure that there are no unsaved changes in the index before beginning any operation that reloads the index from disk (eg, checkout). If there are unsaved changes, the instruction will fail. (Using the FORCE flag to checkout will still overwrite these changes.)

opts(GIT_OPT_ENABLE_UNSAVED_INDEX_SAFETY, int enabled);

GIT_OPT_GET_CACHED_MEMORY

Get the current bytes in cache and the maximum that would be allowed in the cache.

opts(GIT_OPT_GET_CACHED_MEMORY, ssize_t *current, ssize_t *allowed);

GIT_OPT_GET_MWINDOW_MAPPED_LIMIT

Get the maximum memory that will be mapped in total by the library.

opts(GIT_OPT_GET_MWINDOW_MAPPED_LIMIT, size_t *):

GIT_OPT_GET_MWINDOW_SIZE

Get the maximum mmap window size.

opts(GIT_OPT_GET_MWINDOW_SIZE, size_t *):

GIT_OPT_GET_PACK_MAX_OBJECTS

Get the maximum number of objects libgit2 will allow in a pack file when downloading a pack file from a remote. This can be used to limit maximum memory usage when fetching from an untrusted remote.

opts(GIT_OPT_GET_PACK_MAX_OBJECTS, size_t *out);

GIT_OPT_GET_SEARCH_PATH

Get the search path for a given level of config data. "level" must be one of GIT_CONFIG_LEVEL_SYSTEM, GIT_CONFIG_LEVEL_GLOBAL, GIT_CONFIG_LEVEL_XDG, or GIT_CONFIG_LEVEL_PROGRAMDATA. The search path is written to the given buffer.

opts(GIT_OPT_GET_SEARCH_PATH, int level, git_buf *buf);

GIT_OPT_GET_TEMPLATE_PATH

Get the default template path.

opts(GIT_OPT_GET_TEMPLATE_PATH, git_buf *out);

GIT_OPT_GET_USER_AGENT

Gets the value of the User-Agent header.

opts(GIT_OPT_GET_USER_AGENT, git_buf *);

GIT_OPT_GET_WINDOWS_SHAREMODE

Get the share mode used when opening files on Windows.

opts(GIT_OPT_GET_WINDOWS_SHAREMODE, unsigned long *value);

GIT_OPT_SET_ALLOCATOR

Set the memory allocator to a different memory allocator. This allocator will then be used to make all memory allocations for libgit2 operations. If the given allocator is NULL, then the system default will be restored.

opts(GIT_OPT_SET_ALLOCATOR, git_allocator *allocator);

GIT_OPT_SET_CACHE_MAX_SIZE

Set the maximum total data size that will be cached in memory across all repositories before libgit2 starts evicting objects from the cache. This is a soft limit, in that the library might briefly exceed it, but will start aggressively evicting objects from cache when that happens. The default cache size is 256MB.

opts(GIT_OPT_SET_CACHE_MAX_SIZE, ssize_t max_storage_bytes);

GIT_OPT_SET_CACHE_OBJECT_LIMIT

Set the maximum data size for the given type of object to be considered eligible for caching in memory. Setting to value to zero means that that type of object will not be cached.

Defaults to 0 for `GIT_OBJECT_BLOB` (meaning that blobs are not cached) and 4096 for `GIT_OBJECT_COMMIT`, `GIT_OBJECT_TREE`, and `GIT_OBJECT_TAG`.

opts(GIT_OPT_SET_CACHE_OBJECT_LIMIT, git_object_t type, size_t size);

GIT_OPT_SET_MWINDOW_MAPPED_LIMIT

Set the maximum amount of memory that can be mapped at any time by the library.

opts(GIT_OPT_SET_MWINDOW_MAPPED_LIMIT, size_t):

GIT_OPT_SET_MWINDOW_SIZE

Set the maximum mmap window size.

opts(GIT_OPT_SET_MWINDOW_SIZE, size_t);

GIT_OPT_SET_PACK_MAX_OBJECTS

Set the maximum number of objects libgit2 will allow in a pack file when downloading a pack file from a remote.

opts(GIT_OPT_SET_PACK_MAX_OBJECTS, size_t objects);

GIT_OPT_SET_SEARCH_PATH

Set the search path for a level of config data. The search path applies to shared attributes and ignore files, too. Pass the level as one of GIT_CONFIG_LEVEL_SYSTEM, GIT_CONFIG_LEVEL_GLOBAL, GIT_CONFIG_LEVEL_XDG, or GIT_CONFIG_LEVEL_PROGRAMDATA.

Path directories must be delimited by GIT_PATH_LIST_SEPARATOR. Pass NULL to reset to the default (generally based on environment variables). Use the magic path `$PATH` to include the old value of the path (if you want to prepend or append, for instance).

opts(GIT_OPT_SET_SEARCH_PATH, int level, const char *path);

GIT_OPT_SET_SSL_CERT_LOCATIONS

Set the SSL certificate-authority locations. The file is the location of a file containing several certificates concatenated together. The path is the location of a directory holding serveral certificates, on per file. Either parameter may be NULL, but not both.

opts(GIT_OPT_SET_SSL_CERT_LOCATIONS, const char *file, const char *path);

GIT_OPT_SET_SSL_CIPHERS

Set the SSL ciphers use for HTTPS connections.

opts(GIT_OPT_SET_SSL_CIPHERS, const char *ciphers);

GIT_OPT_SET_TEMPLATE_PATH

Set the default template path.

opts(GIT_OPT_GET_TEMPLATE_PATH, git_buf *out);

GIT_OPT_SET_USER_AGENT

Set the value of the User-Agent header. This value will be appended to "git/1.0", for compatibility with other git clients.

opts(GIT_OPT_SET_USER_AGENT, const char *user_agent);

GIT_OPT_SET_WINDOWS_SHAREMODE

Set the share mode used when opening files on Windows. For more information, see the documentation for CreateFile. The default is: FILE_SHARE_READ | FILE_SHARE_WRITE. This is ignored and unused on non-Windows platforms.

opts(GIT_OPT_SET_WINDOWS_SHAREMODE, unsigned long value);

  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX