public static extern unsafe int git_filter_list_load( out git_filter_list *filters, git_repository *repo, git_blob *blob, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = Utf8Marshaler.ToNative, MarshalTypeRef = typeof(Utf8Marshaler))] string path, git_filter_mode_t mode, uint flags);
public static extern unsafe int git_config_add_file_ondisk( git_config *cfg, [MarshalAs(CustomMarshaler, MarshalCookie = NativeCookie, MarshalTypeRef = typeof(U8StringMarshaler))] string path, git_config_level_t level, git_repository *repo, int force);
internal unsafe override void Dispose(bool disposing) { if (nativeRepository != null) { libgit2.git_repository_free(nativeRepository); nativeRepository = null; } }
private unsafe Repository(git_repository *nativeRepository) { Ensure.NativePointerNotNull(nativeRepository); this.nativeRepository = nativeRepository; path = new LazyNative <string>(() => libgit2.git_repository_path(this.nativeRepository), this); workdir = new LazyNative <string>(() => libgit2.git_repository_workdir(this.nativeRepository), this); isBare = new LazyNative <bool>(() => libgit2.git_repository_is_bare(this.nativeRepository) == 0 ? false : true, this); objects = new Lazy <ObjectCollection>(() => new ObjectCollection(this)); references = new Lazy <ReferenceCollection>(() => new ReferenceCollection(this)); }
public static extern unsafe int git_tree_lookup(out git_tree *obj, git_repository *repo, ref git_oid id);
public static extern unsafe int git_clone( out git_repository *repo, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = Utf8Marshaler.ToNative, MarshalTypeRef = typeof(Utf8Marshaler))] string remotePath, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = Utf8Marshaler.ToNative, MarshalTypeRef = typeof(Utf8Marshaler))] string localPath, git_clone_options *options);
public static extern unsafe int git_reference_iterator_new(out git_reference_iterator *iterator, git_repository *repository);
public static extern unsafe int git_reference_lookup( out git_reference *reference, git_repository *repo, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = Utf8Marshaler.ToNative, MarshalTypeRef = typeof(Utf8Marshaler))] string name);
public static extern unsafe void git_repository_free(git_repository *repo);
public static extern unsafe string git_repository_workdir(git_repository *repository);
public static extern unsafe int git_blob_lookup(out git_blob *blob, git_repository *repo, ref git_oid id);
public static extern unsafe int git_repository_head_detached( git_repository *repo);
public static extern unsafe int git_repository_odb(out git_odb *odb, git_repository *repo);
internal RepositoryHandle(git_repository *ptr, bool owned) : base((void *)ptr, owned) { }
public static extern unsafe int git_repository_new(out git_repository *repo);
public static extern unsafe int git_repository_index(out git_index *index, git_repository *repo);
public static extern unsafe int git_repository_is_bare( git_repository *repo);
public static extern unsafe int git_object_lookup(out git_object *obj, git_repository *repo, ref git_oid id, git_object_t type);
public static extern unsafe void git_repository_set_odb(git_repository *repo, git_odb *odb);
public static extern unsafe int git_repository_open( out git_repository *repo, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = Utf8Marshaler.ToNative, MarshalTypeRef = typeof(Utf8Marshaler))] string path);
public static extern unsafe int git_repository_head( out git_reference *reference, git_repository *repo);
public static extern unsafe string git_repository_path(git_repository *repository);
public static extern unsafe int git_filter_list_apply_to_file(git_buf outputBuffer, git_filter_list *filters, git_repository *repo, string path);