rugged 1.3.1 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +34 -2
- data/ext/rugged/extconf.rb +6 -3
- data/ext/rugged/rugged.c +16 -0
- data/ext/rugged/rugged.h +4 -0
- data/ext/rugged/rugged_allocator.c +0 -54
- data/ext/rugged/rugged_blame.c +2 -0
- data/ext/rugged/rugged_blob.c +3 -0
- data/ext/rugged/rugged_commit.c +1 -0
- data/ext/rugged/rugged_config.c +9 -2
- data/ext/rugged/rugged_diff.c +1 -0
- data/ext/rugged/rugged_index.c +2 -0
- data/ext/rugged/rugged_patch.c +1 -0
- data/ext/rugged/rugged_rebase.c +1 -0
- data/ext/rugged/rugged_reference.c +1 -0
- data/ext/rugged/rugged_remote.c +28 -10
- data/ext/rugged/rugged_repo.c +7 -9
- data/ext/rugged/rugged_revwalk.c +5 -1
- data/ext/rugged/rugged_settings.c +5 -0
- data/ext/rugged/rugged_submodule.c +1 -0
- data/ext/rugged/rugged_tag.c +1 -0
- data/ext/rugged/rugged_tree.c +4 -0
- data/lib/rugged/index.rb +1 -1
- data/lib/rugged/tree.rb +5 -1
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +141 -289
- data/vendor/libgit2/COPYING +301 -20
- data/vendor/libgit2/cmake/AddCFlagIfSupported.cmake +21 -21
- data/vendor/libgit2/cmake/AddClarTest.cmake +7 -0
- data/vendor/libgit2/cmake/CheckPrototypeDefinitionSafe.cmake +16 -0
- data/vendor/libgit2/cmake/DefaultCFlags.cmake +154 -0
- data/vendor/libgit2/cmake/EnableWarnings.cmake +13 -13
- data/vendor/libgit2/cmake/ExperimentalFeatures.cmake +23 -0
- data/vendor/libgit2/cmake/FindCoreFoundation.cmake +13 -13
- data/vendor/libgit2/cmake/FindGSSAPI.cmake +171 -287
- data/vendor/libgit2/cmake/FindGSSFramework.cmake +13 -13
- data/vendor/libgit2/cmake/FindHTTP_Parser.cmake +17 -17
- data/vendor/libgit2/cmake/FindIntlIconv.cmake +51 -0
- data/vendor/libgit2/cmake/FindLLHTTP.cmake +39 -0
- data/vendor/libgit2/cmake/FindLibSSH2.cmake +5 -5
- data/vendor/libgit2/cmake/FindPCRE.cmake +12 -13
- data/vendor/libgit2/cmake/FindPCRE2.cmake +12 -12
- data/vendor/libgit2/cmake/FindPkgLibraries.cmake +19 -19
- data/vendor/libgit2/cmake/FindSecurity.cmake +14 -14
- data/vendor/libgit2/cmake/FindStatNsec.cmake +12 -18
- data/vendor/libgit2/cmake/Findfutimens.cmake +8 -8
- data/vendor/libgit2/cmake/FindmbedTLS.cmake +63 -70
- data/vendor/libgit2/cmake/IdeSplitSources.cmake +18 -18
- data/vendor/libgit2/cmake/PkgBuildConfig.cmake +60 -60
- data/vendor/libgit2/cmake/SanitizeBool.cmake +20 -20
- data/vendor/libgit2/cmake/SelectGSSAPI.cmake +37 -37
- data/vendor/libgit2/cmake/SelectHTTPParser.cmake +34 -0
- data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +129 -101
- data/vendor/libgit2/cmake/SelectHashes.cmake +113 -54
- data/vendor/libgit2/cmake/SelectRegex.cmake +56 -0
- data/vendor/libgit2/cmake/SelectSSH.cmake +46 -0
- data/vendor/libgit2/cmake/SelectXdiff.cmake +9 -0
- data/vendor/libgit2/cmake/SelectZlib.cmake +38 -0
- data/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +6 -6
- data/vendor/libgit2/deps/llhttp/CMakeLists.txt +8 -0
- data/vendor/libgit2/deps/llhttp/LICENSE-MIT +22 -0
- data/vendor/libgit2/deps/llhttp/api.c +510 -0
- data/vendor/libgit2/deps/llhttp/http.c +170 -0
- data/vendor/libgit2/deps/llhttp/llhttp.c +10168 -0
- data/vendor/libgit2/deps/llhttp/llhttp.h +897 -0
- data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +33 -31
- data/vendor/libgit2/deps/ntlmclient/crypt_builtin_md4.c +311 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +2 -1
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +0 -20
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +7 -5
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +25 -25
- data/vendor/libgit2/deps/ntlmclient/ntlm.h +4 -4
- data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +2 -2
- data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +5 -4
- data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +2 -1
- data/vendor/libgit2/deps/ntlmclient/utf8.h +1176 -721
- data/vendor/libgit2/deps/ntlmclient/util.h +11 -0
- data/vendor/libgit2/deps/pcre/CMakeLists.txt +89 -88
- data/vendor/libgit2/deps/pcre/LICENCE +5 -5
- data/vendor/libgit2/deps/pcre/pcre.h +2 -2
- data/vendor/libgit2/deps/pcre/pcre_compile.c +6 -3
- data/vendor/libgit2/deps/pcre/pcre_exec.c +2 -2
- data/vendor/libgit2/deps/winhttp/CMakeLists.txt +14 -16
- data/vendor/libgit2/deps/xdiff/CMakeLists.txt +28 -0
- data/vendor/libgit2/deps/xdiff/git-xdiff.h +56 -0
- data/vendor/libgit2/{src → deps}/xdiff/xdiff.h +15 -15
- data/vendor/libgit2/{src → deps}/xdiff/xdiffi.c +152 -125
- data/vendor/libgit2/{src → deps}/xdiff/xdiffi.h +2 -4
- data/vendor/libgit2/{src → deps}/xdiff/xemit.c +26 -10
- data/vendor/libgit2/{src → deps}/xdiff/xhistogram.c +92 -94
- data/vendor/libgit2/{src → deps}/xdiff/xinclude.h +1 -12
- data/vendor/libgit2/{src → deps}/xdiff/xmacros.h +18 -1
- data/vendor/libgit2/{src → deps}/xdiff/xmerge.c +126 -137
- data/vendor/libgit2/{src → deps}/xdiff/xpatience.c +26 -46
- data/vendor/libgit2/{src → deps}/xdiff/xprepare.c +24 -46
- data/vendor/libgit2/{src → deps}/xdiff/xutils.c +36 -8
- data/vendor/libgit2/{src → deps}/xdiff/xutils.h +2 -1
- data/vendor/libgit2/deps/zlib/CMakeLists.txt +6 -1
- data/vendor/libgit2/deps/zlib/LICENSE +22 -0
- data/vendor/libgit2/deps/zlib/adler32.c +7 -22
- data/vendor/libgit2/deps/zlib/crc32.c +931 -317
- data/vendor/libgit2/deps/zlib/crc32.h +9441 -436
- data/vendor/libgit2/deps/zlib/deflate.c +428 -453
- data/vendor/libgit2/deps/zlib/deflate.h +51 -23
- data/vendor/libgit2/deps/zlib/gzguts.h +15 -19
- data/vendor/libgit2/deps/zlib/infback.c +19 -31
- data/vendor/libgit2/deps/zlib/inffast.c +15 -18
- data/vendor/libgit2/deps/zlib/inffast.h +1 -1
- data/vendor/libgit2/deps/zlib/inflate.c +75 -110
- data/vendor/libgit2/deps/zlib/inflate.h +3 -2
- data/vendor/libgit2/deps/zlib/inftrees.c +6 -11
- data/vendor/libgit2/deps/zlib/inftrees.h +6 -6
- data/vendor/libgit2/deps/zlib/trees.c +294 -380
- data/vendor/libgit2/deps/zlib/zconf.h +23 -14
- data/vendor/libgit2/deps/zlib/zlib.h +310 -284
- data/vendor/libgit2/deps/zlib/zutil.c +20 -46
- data/vendor/libgit2/deps/zlib/zutil.h +24 -41
- data/vendor/libgit2/include/git2/annotated_commit.h +12 -5
- data/vendor/libgit2/include/git2/apply.h +43 -8
- data/vendor/libgit2/include/git2/attr.h +28 -6
- data/vendor/libgit2/include/git2/blame.h +137 -29
- data/vendor/libgit2/include/git2/blob.h +85 -29
- data/vendor/libgit2/include/git2/branch.h +25 -16
- data/vendor/libgit2/include/git2/buffer.h +24 -82
- data/vendor/libgit2/include/git2/cert.h +4 -3
- data/vendor/libgit2/include/git2/checkout.h +88 -34
- data/vendor/libgit2/include/git2/cherrypick.h +10 -3
- data/vendor/libgit2/include/git2/clone.h +28 -12
- data/vendor/libgit2/include/git2/commit.h +134 -3
- data/vendor/libgit2/include/git2/common.h +172 -59
- data/vendor/libgit2/include/git2/config.h +118 -32
- data/vendor/libgit2/include/git2/credential.h +32 -3
- data/vendor/libgit2/include/git2/credential_helpers.h +2 -0
- data/vendor/libgit2/include/git2/deprecated.h +141 -3
- data/vendor/libgit2/include/git2/describe.h +20 -3
- data/vendor/libgit2/include/git2/diff.h +95 -19
- data/vendor/libgit2/include/git2/email.h +10 -30
- data/vendor/libgit2/include/git2/errors.h +51 -61
- data/vendor/libgit2/include/git2/experimental.h +20 -0
- data/vendor/libgit2/include/git2/filter.h +21 -9
- data/vendor/libgit2/include/git2/global.h +8 -1
- data/vendor/libgit2/include/git2/graph.h +4 -2
- data/vendor/libgit2/include/git2/ignore.h +11 -1
- data/vendor/libgit2/include/git2/index.h +111 -11
- data/vendor/libgit2/include/git2/indexer.h +67 -2
- data/vendor/libgit2/include/git2/mailmap.h +7 -1
- data/vendor/libgit2/include/git2/merge.h +70 -5
- data/vendor/libgit2/include/git2/message.h +4 -2
- data/vendor/libgit2/include/git2/net.h +3 -1
- data/vendor/libgit2/include/git2/notes.h +9 -6
- data/vendor/libgit2/include/git2/object.h +57 -7
- data/vendor/libgit2/include/git2/odb.h +156 -33
- data/vendor/libgit2/include/git2/odb_backend.h +132 -16
- data/vendor/libgit2/include/git2/oid.h +116 -17
- data/vendor/libgit2/include/git2/oidarray.h +7 -1
- data/vendor/libgit2/include/git2/pack.h +37 -9
- data/vendor/libgit2/include/git2/patch.h +10 -3
- data/vendor/libgit2/include/git2/pathspec.h +10 -1
- data/vendor/libgit2/include/git2/proxy.h +11 -1
- data/vendor/libgit2/include/git2/rebase.h +18 -7
- data/vendor/libgit2/include/git2/refdb.h +5 -2
- data/vendor/libgit2/include/git2/reflog.h +4 -3
- data/vendor/libgit2/include/git2/refs.h +11 -8
- data/vendor/libgit2/include/git2/refspec.h +14 -4
- data/vendor/libgit2/include/git2/remote.h +295 -54
- data/vendor/libgit2/include/git2/repository.h +95 -25
- data/vendor/libgit2/include/git2/reset.h +18 -5
- data/vendor/libgit2/include/git2/revert.h +9 -4
- data/vendor/libgit2/include/git2/revparse.h +4 -4
- data/vendor/libgit2/include/git2/revwalk.h +7 -3
- data/vendor/libgit2/include/git2/signature.h +47 -2
- data/vendor/libgit2/include/git2/stash.h +78 -10
- data/vendor/libgit2/include/git2/status.h +24 -11
- data/vendor/libgit2/include/git2/stdint.h +87 -85
- data/vendor/libgit2/include/git2/strarray.h +2 -16
- data/vendor/libgit2/include/git2/submodule.h +27 -11
- data/vendor/libgit2/include/git2/sys/alloc.h +12 -34
- data/vendor/libgit2/include/git2/sys/commit.h +77 -3
- data/vendor/libgit2/include/git2/sys/commit_graph.h +110 -59
- data/vendor/libgit2/include/git2/sys/config.h +80 -4
- data/vendor/libgit2/include/git2/sys/credential.h +4 -3
- data/vendor/libgit2/include/git2/sys/diff.h +21 -1
- data/vendor/libgit2/include/git2/sys/email.h +7 -0
- data/vendor/libgit2/include/git2/sys/errors.h +76 -0
- data/vendor/libgit2/include/git2/sys/filter.h +66 -3
- data/vendor/libgit2/include/git2/sys/hashsig.h +11 -0
- data/vendor/libgit2/include/git2/sys/index.h +3 -2
- data/vendor/libgit2/include/git2/sys/mempack.h +32 -2
- data/vendor/libgit2/include/git2/sys/merge.h +55 -7
- data/vendor/libgit2/include/git2/sys/midx.h +47 -4
- data/vendor/libgit2/include/git2/sys/odb_backend.h +10 -9
- data/vendor/libgit2/include/git2/sys/openssl.h +8 -1
- data/vendor/libgit2/include/git2/sys/path.h +12 -1
- data/vendor/libgit2/include/git2/sys/refdb_backend.h +40 -36
- data/vendor/libgit2/include/git2/sys/refs.h +3 -2
- data/vendor/libgit2/include/git2/sys/remote.h +53 -0
- data/vendor/libgit2/include/git2/sys/repository.h +63 -3
- data/vendor/libgit2/include/git2/sys/stream.h +26 -3
- data/vendor/libgit2/include/git2/sys/transport.h +87 -41
- data/vendor/libgit2/include/git2/tag.h +4 -1
- data/vendor/libgit2/include/git2/trace.h +9 -3
- data/vendor/libgit2/include/git2/transaction.h +3 -2
- data/vendor/libgit2/include/git2/transport.h +11 -3
- data/vendor/libgit2/include/git2/tree.h +20 -8
- data/vendor/libgit2/include/git2/types.h +26 -10
- data/vendor/libgit2/include/git2/version.h +63 -6
- data/vendor/libgit2/include/git2/worktree.h +30 -8
- data/vendor/libgit2/include/git2.h +1 -0
- data/vendor/libgit2/src/CMakeLists.txt +203 -420
- data/vendor/libgit2/src/README.md +12 -0
- data/vendor/libgit2/src/cli/CMakeLists.txt +56 -0
- data/vendor/libgit2/src/cli/README.md +26 -0
- data/vendor/libgit2/src/{branch.h → cli/cmd.c} +10 -8
- data/vendor/libgit2/src/cli/cmd.h +37 -0
- data/vendor/libgit2/src/cli/cmd_blame.c +287 -0
- data/vendor/libgit2/src/cli/cmd_cat_file.c +202 -0
- data/vendor/libgit2/src/cli/cmd_clone.c +190 -0
- data/vendor/libgit2/src/cli/cmd_config.c +241 -0
- data/vendor/libgit2/src/cli/cmd_hash_object.c +152 -0
- data/vendor/libgit2/src/cli/cmd_help.c +85 -0
- data/vendor/libgit2/src/cli/cmd_index_pack.c +114 -0
- data/vendor/libgit2/src/cli/cmd_init.c +102 -0
- data/vendor/libgit2/src/cli/common.c +168 -0
- data/vendor/libgit2/src/cli/common.h +63 -0
- data/vendor/libgit2/src/cli/error.h +51 -0
- data/vendor/libgit2/src/cli/main.c +134 -0
- data/vendor/libgit2/src/cli/opt.c +695 -0
- data/vendor/libgit2/src/cli/opt.h +367 -0
- data/vendor/libgit2/src/cli/opt_usage.c +263 -0
- data/vendor/libgit2/src/cli/opt_usage.h +40 -0
- data/vendor/libgit2/src/cli/progress.c +395 -0
- data/vendor/libgit2/src/cli/progress.h +129 -0
- data/vendor/libgit2/src/cli/sighandler.h +20 -0
- data/vendor/libgit2/src/cli/unix/sighandler.c +37 -0
- data/vendor/libgit2/src/cli/win32/precompiled.h +3 -0
- data/vendor/libgit2/src/cli/win32/sighandler.c +37 -0
- data/vendor/libgit2/src/libgit2/CMakeLists.txt +140 -0
- data/vendor/libgit2/src/{annotated_commit.c → libgit2/annotated_commit.c} +2 -2
- data/vendor/libgit2/src/{annotated_commit.h → libgit2/annotated_commit.h} +2 -2
- data/vendor/libgit2/src/{apply.c → libgit2/apply.c} +32 -34
- data/vendor/libgit2/src/{apply.h → libgit2/apply.h} +2 -2
- data/vendor/libgit2/src/{attr.c → libgit2/attr.c} +48 -31
- data/vendor/libgit2/src/{attr_file.c → libgit2/attr_file.c} +25 -20
- data/vendor/libgit2/src/{attr_file.h → libgit2/attr_file.h} +6 -4
- data/vendor/libgit2/src/{attrcache.c → libgit2/attrcache.c} +87 -46
- data/vendor/libgit2/src/{attrcache.h → libgit2/attrcache.h} +5 -9
- data/vendor/libgit2/src/{blame.c → libgit2/blame.c} +152 -57
- data/vendor/libgit2/src/{blame.h → libgit2/blame.h} +1 -0
- data/vendor/libgit2/src/{blame_git.c → libgit2/blame_git.c} +1 -2
- data/vendor/libgit2/src/{blob.c → libgit2/blob.c} +38 -29
- data/vendor/libgit2/src/{blob.h → libgit2/blob.h} +3 -3
- data/vendor/libgit2/src/{branch.c → libgit2/branch.c} +164 -118
- data/vendor/libgit2/src/libgit2/branch.h +31 -0
- data/vendor/libgit2/src/libgit2/buf.c +126 -0
- data/vendor/libgit2/src/libgit2/buf.h +50 -0
- data/vendor/libgit2/src/{cache.c → libgit2/cache.c} +22 -17
- data/vendor/libgit2/src/{cache.h → libgit2/cache.h} +7 -9
- data/vendor/libgit2/src/{checkout.c → libgit2/checkout.c} +107 -91
- data/vendor/libgit2/src/{checkout.h → libgit2/checkout.h} +0 -2
- data/vendor/libgit2/src/{cherrypick.c → libgit2/cherrypick.c} +14 -15
- data/vendor/libgit2/src/{clone.c → libgit2/clone.c} +254 -203
- data/vendor/libgit2/src/{clone.h → libgit2/clone.h} +4 -1
- data/vendor/libgit2/src/{commit.c → libgit2/commit.c} +296 -77
- data/vendor/libgit2/src/libgit2/commit.h +87 -0
- data/vendor/libgit2/src/{commit_graph.c → libgit2/commit_graph.c} +246 -135
- data/vendor/libgit2/src/{commit_graph.h → libgit2/commit_graph.h} +33 -8
- data/vendor/libgit2/src/{commit_list.c → libgit2/commit_list.c} +17 -7
- data/vendor/libgit2/src/{commit_list.h → libgit2/commit_list.h} +1 -0
- data/vendor/libgit2/src/libgit2/common.h +55 -0
- data/vendor/libgit2/src/{config.c → libgit2/config.c} +490 -360
- data/vendor/libgit2/src/libgit2/config.cmake.in +3 -0
- data/vendor/libgit2/src/{config.h → libgit2/config.h} +24 -6
- data/vendor/libgit2/src/{config_backend.h → libgit2/config_backend.h} +8 -10
- data/vendor/libgit2/src/{config_cache.c → libgit2/config_cache.c} +4 -5
- data/vendor/libgit2/src/{config_file.c → libgit2/config_file.c} +212 -183
- data/vendor/libgit2/src/libgit2/config_list.c +285 -0
- data/vendor/libgit2/src/libgit2/config_list.h +32 -0
- data/vendor/libgit2/src/libgit2/config_mem.c +374 -0
- data/vendor/libgit2/src/{config_parse.c → libgit2/config_parse.c} +37 -32
- data/vendor/libgit2/src/{config_snapshot.c → libgit2/config_snapshot.c} +24 -31
- data/vendor/libgit2/src/{crlf.c → libgit2/crlf.c} +24 -21
- data/vendor/libgit2/src/{describe.c → libgit2/describe.c} +62 -51
- data/vendor/libgit2/src/{diff.c → libgit2/diff.c} +44 -14
- data/vendor/libgit2/src/{diff.h → libgit2/diff.h} +8 -10
- data/vendor/libgit2/src/{diff_driver.c → libgit2/diff_driver.c} +46 -55
- data/vendor/libgit2/src/{diff_driver.h → libgit2/diff_driver.h} +5 -5
- data/vendor/libgit2/src/{diff_file.c → libgit2/diff_file.c} +45 -27
- data/vendor/libgit2/src/{diff_generate.c → libgit2/diff_generate.c} +70 -20
- data/vendor/libgit2/src/{diff_generate.h → libgit2/diff_generate.h} +5 -3
- data/vendor/libgit2/src/{diff_parse.c → libgit2/diff_parse.c} +22 -6
- data/vendor/libgit2/src/{diff_print.c → libgit2/diff_print.c} +192 -105
- data/vendor/libgit2/src/{diff_stats.c → libgit2/diff_stats.c} +40 -29
- data/vendor/libgit2/src/libgit2/diff_stats.h +18 -0
- data/vendor/libgit2/src/{diff_tform.c → libgit2/diff_tform.c} +49 -16
- data/vendor/libgit2/src/{diff_xdiff.c → libgit2/diff_xdiff.c} +4 -8
- data/vendor/libgit2/src/{diff_xdiff.h → libgit2/diff_xdiff.h} +1 -1
- data/vendor/libgit2/src/{email.c → libgit2/email.c} +58 -40
- data/vendor/libgit2/src/{email.h → libgit2/email.h} +1 -1
- data/vendor/libgit2/src/{transports/ssh.h → libgit2/experimental.h.in} +3 -4
- data/vendor/libgit2/src/{fetch.c → libgit2/fetch.c} +105 -30
- data/vendor/libgit2/src/{fetch.h → libgit2/fetch.h} +1 -3
- data/vendor/libgit2/src/{fetchhead.c → libgit2/fetchhead.c} +30 -28
- data/vendor/libgit2/src/{filter.c → libgit2/filter.c} +132 -58
- data/vendor/libgit2/src/{filter.h → libgit2/filter.h} +26 -5
- data/vendor/libgit2/src/{win32 → libgit2}/git2.rc +3 -3
- data/vendor/libgit2/src/libgit2/grafts.c +270 -0
- data/vendor/libgit2/src/libgit2/grafts.h +35 -0
- data/vendor/libgit2/src/{graph.c → libgit2/graph.c} +1 -1
- data/vendor/libgit2/src/libgit2/hashmap_oid.h +30 -0
- data/vendor/libgit2/src/{ident.c → libgit2/ident.c} +20 -20
- data/vendor/libgit2/src/{ignore.c → libgit2/ignore.c} +44 -39
- data/vendor/libgit2/src/{ignore.h → libgit2/ignore.h} +2 -2
- data/vendor/libgit2/src/{index.c → libgit2/index.c} +460 -276
- data/vendor/libgit2/src/{index.h → libgit2/index.h} +21 -5
- data/vendor/libgit2/src/libgit2/index_map.c +95 -0
- data/vendor/libgit2/src/libgit2/index_map.h +28 -0
- data/vendor/libgit2/src/{indexer.c → libgit2/indexer.c} +208 -124
- data/vendor/libgit2/src/{iterator.c → libgit2/iterator.c} +102 -71
- data/vendor/libgit2/src/{iterator.h → libgit2/iterator.h} +8 -5
- data/vendor/libgit2/src/libgit2/libgit2.c +268 -0
- data/vendor/libgit2/src/{mailmap.c → libgit2/mailmap.c} +39 -37
- data/vendor/libgit2/src/{merge.c → libgit2/merge.c} +83 -73
- data/vendor/libgit2/src/{merge.h → libgit2/merge.h} +1 -14
- data/vendor/libgit2/src/{merge_driver.c → libgit2/merge_driver.c} +4 -4
- data/vendor/libgit2/src/{merge_file.c → libgit2/merge_file.c} +13 -5
- data/vendor/libgit2/src/{message.c → libgit2/message.c} +21 -10
- data/vendor/libgit2/src/{midx.c → libgit2/midx.c} +174 -112
- data/vendor/libgit2/src/{midx.h → libgit2/midx.h} +17 -6
- data/vendor/libgit2/src/{mwindow.c → libgit2/mwindow.c} +53 -57
- data/vendor/libgit2/src/{mwindow.h → libgit2/mwindow.h} +9 -2
- data/vendor/libgit2/src/{notes.c → libgit2/notes.c} +29 -37
- data/vendor/libgit2/src/{object.c → libgit2/object.c} +166 -35
- data/vendor/libgit2/src/{object.h → libgit2/object.h} +17 -2
- data/vendor/libgit2/src/{odb.c → libgit2/odb.c} +261 -88
- data/vendor/libgit2/src/{odb.h → libgit2/odb.h} +44 -5
- data/vendor/libgit2/src/{odb_loose.c → libgit2/odb_loose.c} +192 -134
- data/vendor/libgit2/src/{odb_mempack.c → libgit2/odb_mempack.c} +67 -22
- data/vendor/libgit2/src/{odb_pack.c → libgit2/odb_pack.c} +162 -89
- data/vendor/libgit2/src/{oid.c → libgit2/oid.c} +171 -92
- data/vendor/libgit2/src/libgit2/oid.h +284 -0
- data/vendor/libgit2/src/libgit2/oidarray.c +89 -0
- data/vendor/libgit2/src/{oidarray.h → libgit2/oidarray.h} +5 -1
- data/vendor/libgit2/src/{pack-objects.c → libgit2/pack-objects.c} +126 -66
- data/vendor/libgit2/src/{pack-objects.h → libgit2/pack-objects.h} +28 -12
- data/vendor/libgit2/src/{pack.c → libgit2/pack.c} +146 -111
- data/vendor/libgit2/src/{pack.h → libgit2/pack.h} +45 -25
- data/vendor/libgit2/src/{parse.c → libgit2/parse.c} +8 -4
- data/vendor/libgit2/src/{parse.h → libgit2/parse.h} +1 -1
- data/vendor/libgit2/src/{patch.c → libgit2/patch.c} +3 -3
- data/vendor/libgit2/src/{patch.h → libgit2/patch.h} +8 -1
- data/vendor/libgit2/src/{patch_generate.c → libgit2/patch_generate.c} +51 -16
- data/vendor/libgit2/src/{patch_generate.h → libgit2/patch_generate.h} +5 -5
- data/vendor/libgit2/src/{patch_parse.c → libgit2/patch_parse.c} +42 -34
- data/vendor/libgit2/src/libgit2/path.c +375 -0
- data/vendor/libgit2/src/libgit2/path.h +68 -0
- data/vendor/libgit2/src/{pathspec.c → libgit2/pathspec.c} +7 -7
- data/vendor/libgit2/src/{pathspec.h → libgit2/pathspec.h} +2 -2
- data/vendor/libgit2/src/{proxy.c → libgit2/proxy.c} +4 -1
- data/vendor/libgit2/src/{proxy.h → libgit2/proxy.h} +1 -1
- data/vendor/libgit2/src/{push.c → libgit2/push.c} +116 -60
- data/vendor/libgit2/src/{push.h → libgit2/push.h} +5 -16
- data/vendor/libgit2/src/{reader.c → libgit2/reader.c} +9 -9
- data/vendor/libgit2/src/{reader.h → libgit2/reader.h} +2 -2
- data/vendor/libgit2/src/{rebase.c → libgit2/rebase.c} +147 -147
- data/vendor/libgit2/src/{refdb_fs.c → libgit2/refdb_fs.c} +639 -254
- data/vendor/libgit2/src/{reflog.c → libgit2/reflog.c} +8 -7
- data/vendor/libgit2/src/{reflog.h → libgit2/reflog.h} +3 -2
- data/vendor/libgit2/src/{refs.c → libgit2/refs.c} +67 -39
- data/vendor/libgit2/src/{refs.h → libgit2/refs.h} +8 -3
- data/vendor/libgit2/src/{refspec.c → libgit2/refspec.c} +60 -38
- data/vendor/libgit2/src/{refspec.h → libgit2/refspec.h} +13 -2
- data/vendor/libgit2/src/{remote.c → libgit2/remote.c} +821 -454
- data/vendor/libgit2/src/libgit2/remote.h +101 -0
- data/vendor/libgit2/src/{repository.c → libgit2/repository.c} +1377 -594
- data/vendor/libgit2/src/{repository.h → libgit2/repository.h} +43 -12
- data/vendor/libgit2/src/{reset.c → libgit2/reset.c} +8 -5
- data/vendor/libgit2/src/{revert.c → libgit2/revert.c} +18 -22
- data/vendor/libgit2/src/{revparse.c → libgit2/revparse.c} +76 -44
- data/vendor/libgit2/src/{revwalk.c → libgit2/revwalk.c} +48 -19
- data/vendor/libgit2/src/{revwalk.h → libgit2/revwalk.h} +3 -3
- data/vendor/libgit2/src/{libgit2.c → libgit2/settings.c} +162 -95
- data/vendor/libgit2/src/{settings.h → libgit2/settings.h} +6 -2
- data/vendor/libgit2/src/{signature.c → libgit2/signature.c} +144 -21
- data/vendor/libgit2/src/{signature.h → libgit2/signature.h} +1 -2
- data/vendor/libgit2/src/{stash.c → libgit2/stash.c} +243 -68
- data/vendor/libgit2/src/{status.c → libgit2/status.c} +5 -2
- data/vendor/libgit2/src/{strarray.c → libgit2/strarray.c} +1 -0
- data/vendor/libgit2/src/libgit2/strarray.h +25 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.c +62 -67
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.c +41 -24
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.h +2 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.c +11 -3
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.h +6 -3
- data/vendor/libgit2/src/libgit2/streams/schannel.c +715 -0
- data/vendor/libgit2/src/libgit2/streams/schannel.h +28 -0
- data/vendor/libgit2/src/libgit2/streams/socket.c +428 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/socket.h +3 -1
- data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.c +79 -19
- data/vendor/libgit2/src/{streams → libgit2/streams}/tls.c +5 -0
- data/vendor/libgit2/src/{submodule.c → libgit2/submodule.c} +279 -220
- data/vendor/libgit2/src/{submodule.h → libgit2/submodule.h} +10 -11
- data/vendor/libgit2/src/libgit2/sysdir.c +650 -0
- data/vendor/libgit2/src/{sysdir.h → libgit2/sysdir.h} +55 -18
- data/vendor/libgit2/src/{tag.c → libgit2/tag.c} +74 -43
- data/vendor/libgit2/src/{tag.h → libgit2/tag.h} +2 -2
- data/vendor/libgit2/src/{trace.c → libgit2/trace.c} +1 -14
- data/vendor/libgit2/src/{trace.h → libgit2/trace.h} +5 -22
- data/vendor/libgit2/src/{trailer.c → libgit2/trailer.c} +7 -7
- data/vendor/libgit2/src/{transaction.c → libgit2/transaction.c} +27 -21
- data/vendor/libgit2/src/{transaction.h → libgit2/transaction.h} +4 -1
- data/vendor/libgit2/src/{transport.c → libgit2/transport.c} +14 -11
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth.c +7 -9
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth.h +3 -5
- data/vendor/libgit2/src/{transports/auth_negotiate.c → libgit2/transports/auth_gssapi.c} +44 -45
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth_negotiate.h +1 -1
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth_ntlm.h +1 -2
- data/vendor/libgit2/src/{transports/auth_ntlm.c → libgit2/transports/auth_ntlmclient.c} +22 -22
- data/vendor/libgit2/src/libgit2/transports/auth_sspi.c +341 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/credential.c +1 -1
- data/vendor/libgit2/src/{transports → libgit2/transports}/git.c +16 -19
- data/vendor/libgit2/src/{transports → libgit2/transports}/http.c +49 -24
- data/vendor/libgit2/src/{transports → libgit2/transports}/http.h +0 -11
- data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.c +188 -134
- data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.h +10 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.c +128 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.h +99 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/local.c +159 -127
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart.c +142 -165
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart.h +56 -36
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart_pkt.c +307 -74
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart_protocol.c +297 -97
- data/vendor/libgit2/src/libgit2/transports/ssh.c +85 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.c +347 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.h +26 -0
- data/vendor/libgit2/src/{transports/ssh.c → libgit2/transports/ssh_libssh2.c} +414 -268
- data/vendor/libgit2/src/libgit2/transports/ssh_libssh2.h +28 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/winhttp.c +101 -75
- data/vendor/libgit2/src/{tree-cache.c → libgit2/tree-cache.c} +30 -20
- data/vendor/libgit2/src/{tree-cache.h → libgit2/tree-cache.h} +7 -5
- data/vendor/libgit2/src/{tree.c → libgit2/tree.c} +128 -110
- data/vendor/libgit2/src/{tree.h → libgit2/tree.h} +7 -6
- data/vendor/libgit2/src/{worktree.c → libgit2/worktree.c} +160 -121
- data/vendor/libgit2/src/{worktree.h → libgit2/worktree.h} +1 -1
- data/vendor/libgit2/src/util/CMakeLists.txt +77 -0
- data/vendor/libgit2/src/{alloc.c → util/alloc.c} +69 -7
- data/vendor/libgit2/src/util/alloc.h +65 -0
- data/vendor/libgit2/src/util/allocators/debugalloc.c +73 -0
- data/vendor/libgit2/src/util/allocators/debugalloc.h +17 -0
- data/vendor/libgit2/src/util/allocators/failalloc.c +32 -0
- data/vendor/libgit2/src/util/allocators/failalloc.h +17 -0
- data/vendor/libgit2/src/util/allocators/stdalloc.c +37 -0
- data/vendor/libgit2/src/{allocators → util/allocators}/stdalloc.h +1 -1
- data/vendor/libgit2/src/util/allocators/win32_leakcheck.c +50 -0
- data/vendor/libgit2/src/{allocators → util/allocators}/win32_leakcheck.h +1 -1
- data/vendor/libgit2/src/{array.h → util/array.h} +25 -19
- data/vendor/libgit2/src/{assert_safe.h → util/assert_safe.h} +16 -0
- data/vendor/libgit2/src/{cc-compat.h → util/cc-compat.h} +5 -1
- data/vendor/libgit2/src/util/ctype_compat.h +70 -0
- data/vendor/libgit2/src/{date.c → util/date.c} +35 -33
- data/vendor/libgit2/src/util/date.h +45 -0
- data/vendor/libgit2/src/util/errors.c +401 -0
- data/vendor/libgit2/src/{errors.h → util/errors.h} +22 -19
- data/vendor/libgit2/src/{filebuf.c → util/filebuf.c} +35 -30
- data/vendor/libgit2/src/{filebuf.h → util/filebuf.h} +21 -8
- data/vendor/libgit2/src/{path.c → util/fs_path.c} +591 -615
- data/vendor/libgit2/src/{path.h → util/fs_path.h} +257 -181
- data/vendor/libgit2/src/{futils.c → util/futils.c} +144 -95
- data/vendor/libgit2/src/{futils.h → util/futils.h} +40 -18
- data/vendor/libgit2/src/{features.h.in → util/git2_features.h.in} +33 -2
- data/vendor/libgit2/src/{common.h → util/git2_util.h} +26 -59
- data/vendor/libgit2/src/util/hash/builtin.c +53 -0
- data/vendor/libgit2/src/{hash/sha1/openssl.h → util/hash/builtin.h} +6 -6
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.c +3 -3
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.h +3 -3
- data/vendor/libgit2/src/util/hash/common_crypto.c +112 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/common_crypto.h +11 -3
- data/vendor/libgit2/src/util/hash/mbedtls.c +92 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/mbedtls.h +14 -4
- data/vendor/libgit2/src/util/hash/openssl.c +347 -0
- data/vendor/libgit2/src/util/hash/openssl.h +61 -0
- data/vendor/libgit2/src/util/hash/rfc6234/sha.h +243 -0
- data/vendor/libgit2/src/util/hash/rfc6234/sha224-256.c +601 -0
- data/vendor/libgit2/src/util/hash/sha.h +73 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.c +1 -1
- data/vendor/libgit2/src/util/hash/win32.c +549 -0
- data/vendor/libgit2/src/util/hash/win32.h +60 -0
- data/vendor/libgit2/src/util/hash.c +158 -0
- data/vendor/libgit2/src/util/hash.h +61 -0
- data/vendor/libgit2/src/util/hashmap.h +424 -0
- data/vendor/libgit2/src/util/hashmap_str.h +43 -0
- data/vendor/libgit2/src/{integer.h → util/integer.h} +3 -1
- data/vendor/libgit2/src/{map.h → util/map.h} +1 -1
- data/vendor/libgit2/src/util/net.c +1160 -0
- data/vendor/libgit2/src/{net.h → util/net.h} +45 -4
- data/vendor/libgit2/src/{pool.c → util/pool.c} +1 -1
- data/vendor/libgit2/src/{pool.h → util/pool.h} +6 -1
- data/vendor/libgit2/src/{posix.c → util/posix.c} +57 -3
- data/vendor/libgit2/src/{posix.h → util/posix.h} +26 -1
- data/vendor/libgit2/src/{pqueue.h → util/pqueue.h} +3 -3
- data/vendor/libgit2/src/util/process.h +222 -0
- data/vendor/libgit2/src/util/rand.c +230 -0
- data/vendor/libgit2/src/util/rand.h +37 -0
- data/vendor/libgit2/src/{regexp.c → util/regexp.c} +5 -5
- data/vendor/libgit2/src/{regexp.h → util/regexp.h} +1 -1
- data/vendor/libgit2/src/{runtime.c → util/runtime.c} +1 -1
- data/vendor/libgit2/src/{runtime.h → util/runtime.h} +1 -1
- data/vendor/libgit2/src/{sortedcache.c → util/sortedcache.c} +15 -14
- data/vendor/libgit2/src/{sortedcache.h → util/sortedcache.h} +5 -5
- data/vendor/libgit2/src/util/staticstr.h +66 -0
- data/vendor/libgit2/src/{buffer.c → util/str.c} +159 -153
- data/vendor/libgit2/src/util/str.h +357 -0
- data/vendor/libgit2/src/util/strlist.c +108 -0
- data/vendor/libgit2/src/util/strlist.h +36 -0
- data/vendor/libgit2/src/{thread.c → util/thread.c} +1 -1
- data/vendor/libgit2/src/{thread.h → util/thread.h} +23 -22
- data/vendor/libgit2/src/{tsort.c → util/tsort.c} +1 -1
- data/vendor/libgit2/src/{unix → util/unix}/map.c +1 -3
- data/vendor/libgit2/src/{unix → util/unix}/posix.h +1 -6
- data/vendor/libgit2/src/util/unix/process.c +629 -0
- data/vendor/libgit2/src/{unix → util/unix}/realpath.c +24 -8
- data/vendor/libgit2/src/{utf8.c → util/utf8.c} +1 -1
- data/vendor/libgit2/src/{utf8.h → util/utf8.h} +1 -1
- data/vendor/libgit2/src/{util.c → util/util.c} +24 -19
- data/vendor/libgit2/src/{util.h → util/util.h} +30 -81
- data/vendor/libgit2/src/{varint.h → util/varint.h} +1 -1
- data/vendor/libgit2/src/{vector.c → util/vector.c} +3 -3
- data/vendor/libgit2/src/{vector.h → util/vector.h} +4 -4
- data/vendor/libgit2/src/{wildmatch.h → util/wildmatch.h} +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/dir.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/error.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/error.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/map.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/path_w32.c +148 -17
- data/vendor/libgit2/src/{win32 → util/win32}/path_w32.h +3 -1
- data/vendor/libgit2/src/{win32 → util/win32}/posix.h +1 -2
- data/vendor/libgit2/src/{win32 → util/win32}/posix_w32.c +42 -35
- data/vendor/libgit2/src/util/win32/precompiled.c +1 -0
- data/vendor/libgit2/src/{win32 → util/win32}/precompiled.h +1 -1
- data/vendor/libgit2/src/util/win32/process.c +506 -0
- data/vendor/libgit2/src/{win32 → util/win32}/thread.h +1 -1
- data/vendor/libgit2/src/util/win32/utf-conv.c +144 -0
- data/vendor/libgit2/src/util/win32/utf-conv.h +127 -0
- data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.c +2 -3
- data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.h +3 -4
- data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_util.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_util.h +1 -1
- data/vendor/libgit2/src/{zstream.c → util/zstream.c} +5 -5
- data/vendor/libgit2/src/{zstream.h → util/zstream.h} +5 -5
- metadata +431 -362
- data/vendor/libgit2/cmake/FindIconv.cmake +0 -45
- data/vendor/libgit2/deps/http-parser/CMakeLists.txt +0 -6
- data/vendor/libgit2/deps/http-parser/COPYING +0 -23
- data/vendor/libgit2/deps/http-parser/http_parser.c +0 -2182
- data/vendor/libgit2/deps/http-parser/http_parser.h +0 -305
- data/vendor/libgit2/deps/zlib/COPYING +0 -27
- data/vendor/libgit2/include/git2/sys/reflog.h +0 -21
- data/vendor/libgit2/src/alloc.h +0 -40
- data/vendor/libgit2/src/allocators/failalloc.c +0 -92
- data/vendor/libgit2/src/allocators/failalloc.h +0 -23
- data/vendor/libgit2/src/allocators/stdalloc.c +0 -150
- data/vendor/libgit2/src/allocators/win32_leakcheck.c +0 -118
- data/vendor/libgit2/src/buffer.h +0 -374
- data/vendor/libgit2/src/commit.h +0 -46
- data/vendor/libgit2/src/config_entries.c +0 -237
- data/vendor/libgit2/src/config_entries.h +0 -24
- data/vendor/libgit2/src/config_mem.c +0 -220
- data/vendor/libgit2/src/errors.c +0 -238
- data/vendor/libgit2/src/hash/sha1/common_crypto.c +0 -57
- data/vendor/libgit2/src/hash/sha1/generic.c +0 -300
- data/vendor/libgit2/src/hash/sha1/generic.h +0 -19
- data/vendor/libgit2/src/hash/sha1/mbedtls.c +0 -46
- data/vendor/libgit2/src/hash/sha1/openssl.c +0 -59
- data/vendor/libgit2/src/hash/sha1/win32.c +0 -333
- data/vendor/libgit2/src/hash/sha1/win32.h +0 -128
- data/vendor/libgit2/src/hash/sha1.h +0 -38
- data/vendor/libgit2/src/hash.c +0 -110
- data/vendor/libgit2/src/hash.h +0 -46
- data/vendor/libgit2/src/idxmap.c +0 -157
- data/vendor/libgit2/src/idxmap.h +0 -177
- data/vendor/libgit2/src/khash.h +0 -615
- data/vendor/libgit2/src/libgit2.h +0 -15
- data/vendor/libgit2/src/message.h +0 -17
- data/vendor/libgit2/src/net.c +0 -540
- data/vendor/libgit2/src/netops.c +0 -125
- data/vendor/libgit2/src/netops.h +0 -68
- data/vendor/libgit2/src/offmap.c +0 -101
- data/vendor/libgit2/src/offmap.h +0 -133
- data/vendor/libgit2/src/oid.h +0 -51
- data/vendor/libgit2/src/oidarray.c +0 -43
- data/vendor/libgit2/src/oidmap.c +0 -107
- data/vendor/libgit2/src/oidmap.h +0 -128
- data/vendor/libgit2/src/remote.h +0 -55
- data/vendor/libgit2/src/streams/socket.c +0 -239
- data/vendor/libgit2/src/strmap.c +0 -100
- data/vendor/libgit2/src/strmap.h +0 -131
- data/vendor/libgit2/src/sysdir.c +0 -347
- data/vendor/libgit2/src/threadstate.c +0 -84
- data/vendor/libgit2/src/threadstate.h +0 -24
- data/vendor/libgit2/src/win32/findfile.c +0 -230
- data/vendor/libgit2/src/win32/findfile.h +0 -19
- data/vendor/libgit2/src/win32/utf-conv.c +0 -146
- data/vendor/libgit2/src/win32/utf-conv.h +0 -60
- /data/vendor/libgit2/{src → deps}/xdiff/xemit.h +0 -0
- /data/vendor/libgit2/{src → deps}/xdiff/xprepare.h +0 -0
- /data/vendor/libgit2/{src → deps}/xdiff/xtypes.h +0 -0
- /data/vendor/libgit2/src/{win32 → cli/win32}/precompiled.c +0 -0
- /data/vendor/libgit2/src/{attr.h → libgit2/attr.h} +0 -0
- /data/vendor/libgit2/src/{blame_git.h → libgit2/blame_git.h} +0 -0
- /data/vendor/libgit2/src/{config_parse.h → libgit2/config_parse.h} +0 -0
- /data/vendor/libgit2/src/{delta.c → libgit2/delta.c} +0 -0
- /data/vendor/libgit2/src/{delta.h → libgit2/delta.h} +0 -0
- /data/vendor/libgit2/src/{diff_file.h → libgit2/diff_file.h} +0 -0
- /data/vendor/libgit2/src/{diff_parse.h → libgit2/diff_parse.h} +0 -0
- /data/vendor/libgit2/src/{diff_tform.h → libgit2/diff_tform.h} +0 -0
- /data/vendor/libgit2/src/{fetchhead.h → libgit2/fetchhead.h} +0 -0
- /data/vendor/libgit2/src/{hashsig.c → libgit2/hashsig.c} +0 -0
- /data/vendor/libgit2/src/{indexer.h → libgit2/indexer.h} +0 -0
- /data/vendor/libgit2/src/{mailmap.h → libgit2/mailmap.h} +0 -0
- /data/vendor/libgit2/src/{merge_driver.h → libgit2/merge_driver.h} +0 -0
- /data/vendor/libgit2/src/{notes.h → libgit2/notes.h} +0 -0
- /data/vendor/libgit2/src/{object_api.c → libgit2/object_api.c} +0 -0
- /data/vendor/libgit2/src/{patch_parse.h → libgit2/patch_parse.h} +0 -0
- /data/vendor/libgit2/src/{refdb.c → libgit2/refdb.c} +0 -0
- /data/vendor/libgit2/src/{refdb.h → libgit2/refdb.h} +0 -0
- /data/vendor/libgit2/src/{repo_template.h → libgit2/repo_template.h} +0 -0
- /data/vendor/libgit2/src/{status.h → libgit2/status.h} +0 -0
- /data/vendor/libgit2/src/{stream.h → libgit2/stream.h} +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.c +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.c +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/tls.h +0 -0
- /data/vendor/libgit2/src/{transports → libgit2/transports}/credential_helpers.c +0 -0
- /data/vendor/libgit2/src/{userdiff.h → libgit2/userdiff.h} +0 -0
- /data/vendor/libgit2/src/{bitvec.h → util/bitvec.h} +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.h +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.c +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.h +0 -0
- /data/vendor/libgit2/src/{pqueue.c → util/pqueue.c} +0 -0
- /data/vendor/libgit2/src/{strnlen.h → util/strnlen.h} +0 -0
- /data/vendor/libgit2/src/{unix → util/unix}/pthread.h +0 -0
- /data/vendor/libgit2/src/{varint.c → util/varint.c} +0 -0
- /data/vendor/libgit2/src/{wildmatch.c → util/wildmatch.c} +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/dir.c +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/mingw-compat.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/msvc-compat.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/reparse.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/thread.c +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/version.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/w32_common.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/win32-compat.h +0 -0
@@ -15,29 +15,91 @@
|
|
15
15
|
|
16
16
|
/**
|
17
17
|
* @file git2/odb.h
|
18
|
-
* @brief
|
18
|
+
* @brief An object database manages the storage of git objects
|
19
19
|
* @defgroup git_odb Git object database routines
|
20
20
|
* @ingroup Git
|
21
21
|
* @{
|
22
22
|
*/
|
23
23
|
GIT_BEGIN_DECL
|
24
24
|
|
25
|
+
/** Flags controlling the behavior of ODB lookup operations */
|
26
|
+
typedef enum {
|
27
|
+
/**
|
28
|
+
* Don't call `git_odb_refresh` if the lookup fails. Useful when doing
|
29
|
+
* a batch of lookup operations for objects that may legitimately not
|
30
|
+
* exist. When using this flag, you may wish to manually call
|
31
|
+
* `git_odb_refresh` before processing a batch of objects.
|
32
|
+
*/
|
33
|
+
GIT_ODB_LOOKUP_NO_REFRESH = (1 << 0)
|
34
|
+
} git_odb_lookup_flags_t;
|
35
|
+
|
25
36
|
/**
|
26
37
|
* Function type for callbacks from git_odb_foreach.
|
38
|
+
*
|
39
|
+
* @param id an id of an object in the object database
|
40
|
+
* @param payload the payload from the initial call to git_odb_foreach
|
41
|
+
* @return 0 on success, or an error code
|
27
42
|
*/
|
28
43
|
typedef int GIT_CALLBACK(git_odb_foreach_cb)(const git_oid *id, void *payload);
|
29
44
|
|
45
|
+
/** Options for configuring a loose object backend. */
|
46
|
+
typedef struct {
|
47
|
+
unsigned int version; /**< version for the struct */
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Type of object IDs to use for this object database, or
|
51
|
+
* 0 for default (currently SHA1).
|
52
|
+
*/
|
53
|
+
git_oid_t oid_type;
|
54
|
+
} git_odb_options;
|
55
|
+
|
56
|
+
/** The current version of the diff options structure */
|
57
|
+
#define GIT_ODB_OPTIONS_VERSION 1
|
58
|
+
|
59
|
+
/**
|
60
|
+
* Stack initializer for odb options. Alternatively use
|
61
|
+
* `git_odb_options_init` programmatic initialization.
|
62
|
+
*/
|
63
|
+
#define GIT_ODB_OPTIONS_INIT { GIT_ODB_OPTIONS_VERSION }
|
64
|
+
|
65
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
66
|
+
|
67
|
+
/**
|
68
|
+
* Create a new object database with no backends.
|
69
|
+
*
|
70
|
+
* @param[out] odb location to store the database pointer, if opened.
|
71
|
+
* @param opts the options for this object database or NULL for defaults
|
72
|
+
* @return 0 or an error code
|
73
|
+
*/
|
74
|
+
GIT_EXTERN(int) git_odb_new(git_odb **odb, const git_odb_options *opts);
|
75
|
+
|
76
|
+
/**
|
77
|
+
* Create a new object database and automatically add loose and packed
|
78
|
+
* backends.
|
79
|
+
*
|
80
|
+
* @param[out] odb_out location to store the database pointer, if opened.
|
81
|
+
* Set to NULL if the open failed.
|
82
|
+
* @param objects_dir path of the backends' "objects" directory.
|
83
|
+
* @param opts the options for this object database or NULL for defaults
|
84
|
+
* @return 0 or an error code
|
85
|
+
*/
|
86
|
+
GIT_EXTERN(int) git_odb_open(
|
87
|
+
git_odb **odb_out,
|
88
|
+
const char *objects_dir,
|
89
|
+
const git_odb_options *opts);
|
90
|
+
|
91
|
+
#else
|
92
|
+
|
30
93
|
/**
|
31
94
|
* Create a new object database with no backends.
|
32
95
|
*
|
33
96
|
* Before the ODB can be used for read/writing, a custom database
|
34
97
|
* backend must be manually added using `git_odb_add_backend()`
|
35
98
|
*
|
36
|
-
* @param
|
37
|
-
* Set to NULL if the open failed.
|
99
|
+
* @param[out] odb location to store the database pointer, if opened.
|
38
100
|
* @return 0 or an error code
|
39
101
|
*/
|
40
|
-
GIT_EXTERN(int) git_odb_new(git_odb **
|
102
|
+
GIT_EXTERN(int) git_odb_new(git_odb **odb);
|
41
103
|
|
42
104
|
/**
|
43
105
|
* Create a new object database and automatically add
|
@@ -50,12 +112,13 @@ GIT_EXTERN(int) git_odb_new(git_odb **out);
|
|
50
112
|
* assuming `objects_dir` as the Objects folder which
|
51
113
|
* contains a 'pack/' folder with the corresponding data
|
52
114
|
*
|
53
|
-
* @param
|
115
|
+
* @param[out] odb_out location to store the database pointer, if opened.
|
54
116
|
* Set to NULL if the open failed.
|
55
117
|
* @param objects_dir path of the backends' "objects" directory.
|
56
118
|
* @return 0 or an error code
|
57
119
|
*/
|
58
|
-
GIT_EXTERN(int) git_odb_open(git_odb **
|
120
|
+
GIT_EXTERN(int) git_odb_open(git_odb **odb_out, const char *objects_dir);
|
121
|
+
#endif
|
59
122
|
|
60
123
|
/**
|
61
124
|
* Add an on-disk alternate to an existing Object DB.
|
@@ -91,13 +154,13 @@ GIT_EXTERN(void) git_odb_free(git_odb *db);
|
|
91
154
|
* internally cached, so it should be closed
|
92
155
|
* by the user once it's no longer in use.
|
93
156
|
*
|
94
|
-
* @param
|
157
|
+
* @param[out] obj pointer where to store the read object
|
95
158
|
* @param db database to search for the object in.
|
96
159
|
* @param id identity of the object to read.
|
97
160
|
* @return 0 if the object was read, GIT_ENOTFOUND if the object is
|
98
161
|
* not in the database.
|
99
162
|
*/
|
100
|
-
GIT_EXTERN(int) git_odb_read(git_odb_object **
|
163
|
+
GIT_EXTERN(int) git_odb_read(git_odb_object **obj, git_odb *db, const git_oid *id);
|
101
164
|
|
102
165
|
/**
|
103
166
|
* Read an object from the database, given a prefix
|
@@ -106,7 +169,7 @@ GIT_EXTERN(int) git_odb_read(git_odb_object **out, git_odb *db, const git_oid *i
|
|
106
169
|
* This method queries all available ODB backends
|
107
170
|
* trying to match the 'len' first hexadecimal
|
108
171
|
* characters of the 'short_id'.
|
109
|
-
* The remaining (
|
172
|
+
* The remaining (GIT_OID_SHA1_HEXSIZE-len)*4 bits of
|
110
173
|
* 'short_id' must be 0s.
|
111
174
|
* 'len' must be at least GIT_OID_MINPREFIXLEN,
|
112
175
|
* and the prefix must be long enough to identify
|
@@ -117,7 +180,7 @@ GIT_EXTERN(int) git_odb_read(git_odb_object **out, git_odb *db, const git_oid *i
|
|
117
180
|
* internally cached, so it should be closed
|
118
181
|
* by the user once it's no longer in use.
|
119
182
|
*
|
120
|
-
* @param
|
183
|
+
* @param[out] obj pointer where to store the read object
|
121
184
|
* @param db database to search for the object in.
|
122
185
|
* @param short_id a prefix of the id of the object to read.
|
123
186
|
* @param len the length of the prefix
|
@@ -125,7 +188,7 @@ GIT_EXTERN(int) git_odb_read(git_odb_object **out, git_odb *db, const git_oid *i
|
|
125
188
|
* database. GIT_EAMBIGUOUS if the prefix is ambiguous
|
126
189
|
* (several objects match the prefix)
|
127
190
|
*/
|
128
|
-
GIT_EXTERN(int) git_odb_read_prefix(git_odb_object **
|
191
|
+
GIT_EXTERN(int) git_odb_read_prefix(git_odb_object **obj, git_odb *db, const git_oid *short_id, size_t len);
|
129
192
|
|
130
193
|
/**
|
131
194
|
* Read the header of an object from the database, without
|
@@ -137,8 +200,8 @@ GIT_EXTERN(int) git_odb_read_prefix(git_odb_object **out, git_odb *db, const git
|
|
137
200
|
* of an object, so the whole object will be read and then the
|
138
201
|
* header will be returned.
|
139
202
|
*
|
140
|
-
* @param len_out pointer where to store the length
|
141
|
-
* @param type_out pointer where to store the type
|
203
|
+
* @param[out] len_out pointer where to store the length
|
204
|
+
* @param[out] type_out pointer where to store the type
|
142
205
|
* @param db database to search for the object in.
|
143
206
|
* @param id identity of the object to read.
|
144
207
|
* @return 0 if the object was read, GIT_ENOTFOUND if the object is not
|
@@ -155,6 +218,17 @@ GIT_EXTERN(int) git_odb_read_header(size_t *len_out, git_object_t *type_out, git
|
|
155
218
|
*/
|
156
219
|
GIT_EXTERN(int) git_odb_exists(git_odb *db, const git_oid *id);
|
157
220
|
|
221
|
+
/**
|
222
|
+
* Determine if the given object can be found in the object database, with
|
223
|
+
* extended options.
|
224
|
+
*
|
225
|
+
* @param db database to be searched for the given object.
|
226
|
+
* @param id the object to search for.
|
227
|
+
* @param flags flags affecting the lookup (see `git_odb_lookup_flags_t`)
|
228
|
+
* @return 1 if the object was found, 0 otherwise
|
229
|
+
*/
|
230
|
+
GIT_EXTERN(int) git_odb_exists_ext(git_odb *db, const git_oid *id, unsigned int flags);
|
231
|
+
|
158
232
|
/**
|
159
233
|
* Determine if an object can be found in the object database by an
|
160
234
|
* abbreviated object ID.
|
@@ -192,12 +266,13 @@ typedef struct git_odb_expand_id {
|
|
192
266
|
|
193
267
|
/**
|
194
268
|
* Determine if one or more objects can be found in the object database
|
195
|
-
* by their abbreviated object ID and type.
|
196
|
-
*
|
197
|
-
*
|
198
|
-
*
|
199
|
-
* the
|
200
|
-
* array
|
269
|
+
* by their abbreviated object ID and type.
|
270
|
+
*
|
271
|
+
* The given array will be updated in place: for each abbreviated ID that is
|
272
|
+
* unique in the database, and of the given type (if specified),
|
273
|
+
* the full object ID, object ID length (`GIT_OID_SHA1_HEXSIZE`) and type will be
|
274
|
+
* written back to the array. For IDs that are not found (or are ambiguous),
|
275
|
+
* the array entry will be zeroed.
|
201
276
|
*
|
202
277
|
* Note that since this function operates on multiple objects, the
|
203
278
|
* underlying database will not be asked to be reloaded if an object is
|
@@ -231,7 +306,7 @@ GIT_EXTERN(int) git_odb_expand_ids(
|
|
231
306
|
* @param db database to refresh
|
232
307
|
* @return 0 on success, error code otherwise
|
233
308
|
*/
|
234
|
-
GIT_EXTERN(int) git_odb_refresh(
|
309
|
+
GIT_EXTERN(int) git_odb_refresh(git_odb *db);
|
235
310
|
|
236
311
|
/**
|
237
312
|
* List all objects available in the database
|
@@ -246,7 +321,10 @@ GIT_EXTERN(int) git_odb_refresh(struct git_odb *db);
|
|
246
321
|
* @param payload data to pass to the callback
|
247
322
|
* @return 0 on success, non-zero callback return value, or error code
|
248
323
|
*/
|
249
|
-
GIT_EXTERN(int) git_odb_foreach(
|
324
|
+
GIT_EXTERN(int) git_odb_foreach(
|
325
|
+
git_odb *db,
|
326
|
+
git_odb_foreach_cb cb,
|
327
|
+
void *payload);
|
250
328
|
|
251
329
|
/**
|
252
330
|
* Write an object directly into the ODB
|
@@ -261,7 +339,7 @@ GIT_EXTERN(int) git_odb_foreach(git_odb *db, git_odb_foreach_cb cb, void *payloa
|
|
261
339
|
*
|
262
340
|
* @param out pointer to store the OID result of the write
|
263
341
|
* @param odb object database where to store the object
|
264
|
-
* @param data buffer with the data to store
|
342
|
+
* @param data @type `const unsigned char *` buffer with the data to store
|
265
343
|
* @param len size of the buffer
|
266
344
|
* @param type type of the data to store
|
267
345
|
* @return 0 or an error code
|
@@ -323,6 +401,11 @@ GIT_EXTERN(int) git_odb_stream_finalize_write(git_oid *out, git_odb_stream *stre
|
|
323
401
|
* Read from an odb stream
|
324
402
|
*
|
325
403
|
* Most backends don't implement streaming reads
|
404
|
+
*
|
405
|
+
* @param stream the stream
|
406
|
+
* @param buffer a user-allocated buffer to store the data in.
|
407
|
+
* @param len the buffer's length
|
408
|
+
* @return the number of bytes read if succeeded, error code otherwise
|
326
409
|
*/
|
327
410
|
GIT_EXTERN(int) git_odb_stream_read(git_odb_stream *stream, char *buffer, size_t len);
|
328
411
|
|
@@ -383,6 +466,7 @@ GIT_EXTERN(int) git_odb_open_rstream(
|
|
383
466
|
* Be aware that this is called inline with network and indexing operations,
|
384
467
|
* so performance may be affected.
|
385
468
|
* @param progress_payload payload for the progress callback
|
469
|
+
* @return 0 or an error code.
|
386
470
|
*/
|
387
471
|
GIT_EXTERN(int) git_odb_write_pack(
|
388
472
|
git_odb_writepack **out,
|
@@ -400,23 +484,59 @@ GIT_EXTERN(int) git_odb_write_pack(
|
|
400
484
|
* exist).
|
401
485
|
*
|
402
486
|
* @param db object database where the `multi-pack-index` file will be written.
|
487
|
+
* @return 0 or an error code.
|
403
488
|
*/
|
404
489
|
GIT_EXTERN(int) git_odb_write_multi_pack_index(
|
405
490
|
git_odb *db);
|
406
491
|
|
492
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
493
|
+
|
407
494
|
/**
|
408
|
-
*
|
495
|
+
* Generate the object ID (in SHA1 or SHA256 format) for a given data buffer.
|
409
496
|
*
|
410
|
-
*
|
411
|
-
*
|
497
|
+
* @param[out] oid the resulting object ID.
|
498
|
+
* @param data data to hash
|
499
|
+
* @param len size of the data
|
500
|
+
* @param object_type of the data to hash
|
501
|
+
* @param oid_type the oid type to hash to
|
502
|
+
* @return 0 or an error code
|
503
|
+
*/
|
504
|
+
GIT_EXTERN(int) git_odb_hash(
|
505
|
+
git_oid *oid,
|
506
|
+
const void *data,
|
507
|
+
size_t len,
|
508
|
+
git_object_t object_type,
|
509
|
+
git_oid_t oid_type);
|
510
|
+
|
511
|
+
/**
|
512
|
+
* Determine the object ID of a file on disk.
|
513
|
+
*
|
514
|
+
* @param[out] oid oid structure the result is written into.
|
515
|
+
* @param path file to read and determine object id for
|
516
|
+
* @param object_type of the data to hash
|
517
|
+
* @param oid_type the oid type to hash to
|
518
|
+
* @return 0 or an error code
|
519
|
+
*/
|
520
|
+
GIT_EXTERN(int) git_odb_hashfile(
|
521
|
+
git_oid *oid,
|
522
|
+
const char *path,
|
523
|
+
git_object_t object_type,
|
524
|
+
git_oid_t oid_type);
|
525
|
+
#else
|
526
|
+
|
527
|
+
/**
|
528
|
+
* Determine the object-ID (sha1 or sha256 hash) of a data buffer
|
529
|
+
*
|
530
|
+
* The resulting OID will be the identifier for the data buffer as if
|
531
|
+
* the data buffer it were to written to the ODB.
|
412
532
|
*
|
413
|
-
* @param
|
533
|
+
* @param[out] oid the resulting object-ID.
|
414
534
|
* @param data data to hash
|
415
535
|
* @param len size of the data
|
416
|
-
* @param
|
536
|
+
* @param object_type of the data to hash
|
417
537
|
* @return 0 or an error code
|
418
538
|
*/
|
419
|
-
GIT_EXTERN(int) git_odb_hash(git_oid *
|
539
|
+
GIT_EXTERN(int) git_odb_hash(git_oid *oid, const void *data, size_t len, git_object_t object_type);
|
420
540
|
|
421
541
|
/**
|
422
542
|
* Read a file from disk and fill a git_oid with the object id
|
@@ -426,12 +546,14 @@ GIT_EXTERN(int) git_odb_hash(git_oid *out, const void *data, size_t len, git_obj
|
|
426
546
|
* the `-w` flag, however, with the --no-filters flag.
|
427
547
|
* If you need filters, see git_repository_hashfile.
|
428
548
|
*
|
429
|
-
* @param
|
549
|
+
* @param[out] oid oid structure the result is written into.
|
430
550
|
* @param path file to read and determine object id for
|
431
|
-
* @param
|
551
|
+
* @param object_type of the data to hash
|
432
552
|
* @return 0 or an error code
|
433
553
|
*/
|
434
|
-
GIT_EXTERN(int) git_odb_hashfile(git_oid *
|
554
|
+
GIT_EXTERN(int) git_odb_hashfile(git_oid *oid, const char *path, git_object_t object_type);
|
555
|
+
|
556
|
+
#endif
|
435
557
|
|
436
558
|
/**
|
437
559
|
* Create a copy of an odb_object
|
@@ -476,7 +598,7 @@ GIT_EXTERN(const git_oid *) git_odb_object_id(git_odb_object *object);
|
|
476
598
|
* This pointer is owned by the object and shall not be free'd.
|
477
599
|
*
|
478
600
|
* @param object the object
|
479
|
-
* @return a pointer to the data
|
601
|
+
* @return @type `const unsigned char *` a pointer to the data
|
480
602
|
*/
|
481
603
|
GIT_EXTERN(const void *) git_odb_object_data(git_odb_object *object);
|
482
604
|
|
@@ -556,7 +678,7 @@ GIT_EXTERN(int) git_odb_get_backend(git_odb_backend **out, git_odb *odb, size_t
|
|
556
678
|
/**
|
557
679
|
* Set the git commit-graph for the ODB.
|
558
680
|
*
|
559
|
-
* After a
|
681
|
+
* After a successful call, the ownership of the cgraph parameter will be
|
560
682
|
* transferred to libgit2, and the caller should not free it.
|
561
683
|
*
|
562
684
|
* The commit-graph can also be unset by explicitly passing NULL as the cgraph
|
@@ -570,4 +692,5 @@ GIT_EXTERN(int) git_odb_set_commit_graph(git_odb *odb, git_commit_graph *cgraph)
|
|
570
692
|
|
571
693
|
/** @} */
|
572
694
|
GIT_END_DECL
|
695
|
+
|
573
696
|
#endif
|
@@ -13,46 +13,135 @@
|
|
13
13
|
|
14
14
|
/**
|
15
15
|
* @file git2/backend.h
|
16
|
-
* @brief
|
16
|
+
* @brief Object database backends manage the storage of git objects
|
17
17
|
* @defgroup git_odb Git object database routines
|
18
18
|
* @ingroup Git
|
19
19
|
* @{
|
20
20
|
*/
|
21
21
|
GIT_BEGIN_DECL
|
22
22
|
|
23
|
+
/** Options for configuring a packfile object backend. */
|
24
|
+
typedef struct {
|
25
|
+
unsigned int version; /**< version for the struct */
|
26
|
+
|
27
|
+
/**
|
28
|
+
* Type of object IDs to use for this object database, or
|
29
|
+
* 0 for default (currently SHA1).
|
30
|
+
*/
|
31
|
+
git_oid_t oid_type;
|
32
|
+
} git_odb_backend_pack_options;
|
33
|
+
|
34
|
+
/** The current version of the diff options structure */
|
35
|
+
#define GIT_ODB_BACKEND_PACK_OPTIONS_VERSION 1
|
36
|
+
|
37
|
+
/**
|
38
|
+
* Stack initializer for odb pack backend options. Alternatively use
|
39
|
+
* `git_odb_backend_pack_options_init` programmatic initialization.
|
40
|
+
*/
|
41
|
+
#define GIT_ODB_BACKEND_PACK_OPTIONS_INIT \
|
42
|
+
{ GIT_ODB_BACKEND_PACK_OPTIONS_VERSION }
|
43
|
+
|
44
|
+
typedef enum {
|
45
|
+
GIT_ODB_BACKEND_LOOSE_FSYNC = (1 << 0)
|
46
|
+
} git_odb_backend_loose_flag_t;
|
47
|
+
|
48
|
+
/** Options for configuring a loose object backend. */
|
49
|
+
typedef struct {
|
50
|
+
unsigned int version; /**< version for the struct */
|
51
|
+
|
52
|
+
/** A combination of the `git_odb_backend_loose_flag_t` types. */
|
53
|
+
uint32_t flags;
|
54
|
+
|
55
|
+
/**
|
56
|
+
* zlib compression level to use (0-9), where 1 is the fastest
|
57
|
+
* at the expense of larger files, and 9 produces the best
|
58
|
+
* compression at the expense of speed. 0 indicates that no
|
59
|
+
* compression should be performed. -1 is the default (currently
|
60
|
+
* optimizing for speed).
|
61
|
+
*/
|
62
|
+
int compression_level;
|
63
|
+
|
64
|
+
/** Permissions to use creating a directory or 0 for defaults */
|
65
|
+
unsigned int dir_mode;
|
66
|
+
|
67
|
+
/** Permissions to use creating a file or 0 for defaults */
|
68
|
+
unsigned int file_mode;
|
69
|
+
|
70
|
+
/**
|
71
|
+
* Type of object IDs to use for this object database, or
|
72
|
+
* 0 for default (currently SHA1).
|
73
|
+
*/
|
74
|
+
git_oid_t oid_type;
|
75
|
+
} git_odb_backend_loose_options;
|
76
|
+
|
77
|
+
/** The current version of the diff options structure */
|
78
|
+
#define GIT_ODB_BACKEND_LOOSE_OPTIONS_VERSION 1
|
79
|
+
|
80
|
+
/**
|
81
|
+
* Stack initializer for odb loose backend options. Alternatively use
|
82
|
+
* `git_odb_backend_loose_options_init` programmatic initialization.
|
83
|
+
*/
|
84
|
+
#define GIT_ODB_BACKEND_LOOSE_OPTIONS_INIT \
|
85
|
+
{ GIT_ODB_BACKEND_LOOSE_OPTIONS_VERSION, 0, -1 }
|
86
|
+
|
23
87
|
/*
|
24
88
|
* Constructors for in-box ODB backends.
|
25
89
|
*/
|
26
90
|
|
91
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
92
|
+
|
27
93
|
/**
|
28
|
-
* Create a backend for
|
94
|
+
* Create a backend for a directory containing packfiles.
|
29
95
|
*
|
30
|
-
* @param out location to store the odb backend pointer
|
96
|
+
* @param[out] out location to store the odb backend pointer
|
31
97
|
* @param objects_dir the Git repository's objects directory
|
98
|
+
* @param opts the options to use when creating the pack backend
|
99
|
+
* @return 0 or an error code
|
100
|
+
*/
|
101
|
+
GIT_EXTERN(int) git_odb_backend_pack(
|
102
|
+
git_odb_backend **out,
|
103
|
+
const char *objects_dir,
|
104
|
+
const git_odb_backend_pack_options *opts);
|
105
|
+
|
106
|
+
/**
|
107
|
+
* Create a backend for a single packfile.
|
32
108
|
*
|
109
|
+
* @param[out] out location to store the odb backend pointer
|
110
|
+
* @param index_file path to the packfile's .idx file
|
111
|
+
* @param opts the options to use when creating the pack backend
|
33
112
|
* @return 0 or an error code
|
34
113
|
*/
|
35
|
-
GIT_EXTERN(int)
|
114
|
+
GIT_EXTERN(int) git_odb_backend_one_pack(
|
115
|
+
git_odb_backend **out,
|
116
|
+
const char *index_file,
|
117
|
+
const git_odb_backend_pack_options *opts);
|
36
118
|
|
37
119
|
/**
|
38
120
|
* Create a backend for loose objects
|
39
121
|
*
|
40
|
-
* @param out location to store the odb backend pointer
|
122
|
+
* @param[out] out location to store the odb backend pointer
|
41
123
|
* @param objects_dir the Git repository's objects directory
|
42
|
-
* @param
|
43
|
-
* @param do_fsync whether to do an fsync() after writing
|
44
|
-
* @param dir_mode permissions to use creating a directory or 0 for defaults
|
45
|
-
* @param file_mode permissions to use creating a file or 0 for defaults
|
124
|
+
* @param opts options for the loose object backend or NULL
|
46
125
|
*
|
47
126
|
* @return 0 or an error code
|
48
127
|
*/
|
49
128
|
GIT_EXTERN(int) git_odb_backend_loose(
|
50
129
|
git_odb_backend **out,
|
51
130
|
const char *objects_dir,
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
131
|
+
git_odb_backend_loose_options *opts);
|
132
|
+
|
133
|
+
#else
|
134
|
+
|
135
|
+
/**
|
136
|
+
* Create a backend for a directory containing packfiles.
|
137
|
+
*
|
138
|
+
* @param[out] out location to store the odb backend pointer
|
139
|
+
* @param objects_dir the Git repository's objects directory
|
140
|
+
* @return 0 or an error code
|
141
|
+
*/
|
142
|
+
GIT_EXTERN(int) git_odb_backend_pack(
|
143
|
+
git_odb_backend **out,
|
144
|
+
const char *objects_dir);
|
56
145
|
|
57
146
|
/**
|
58
147
|
* Create a backend out of a single packfile
|
@@ -60,18 +149,40 @@ GIT_EXTERN(int) git_odb_backend_loose(
|
|
60
149
|
* This can be useful for inspecting the contents of a single
|
61
150
|
* packfile.
|
62
151
|
*
|
63
|
-
* @param out location to store the odb backend pointer
|
152
|
+
* @param[out] out location to store the odb backend pointer
|
64
153
|
* @param index_file path to the packfile's .idx file
|
154
|
+
* @return 0 or an error code
|
155
|
+
*/
|
156
|
+
GIT_EXTERN(int) git_odb_backend_one_pack(
|
157
|
+
git_odb_backend **out,
|
158
|
+
const char *index_file);
|
159
|
+
|
160
|
+
/**
|
161
|
+
* Create a backend for loose objects
|
65
162
|
*
|
163
|
+
* @param[out] out location to store the odb backend pointer
|
164
|
+
* @param objects_dir the Git repository's objects directory
|
165
|
+
* @param compression_level zlib compression level (0-9), or -1 for the default
|
166
|
+
* @param do_fsync if non-zero, perform an fsync on write
|
167
|
+
* @param dir_mode permission to use when creating directories, or 0 for default
|
168
|
+
* @param file_mode permission to use when creating directories, or 0 for default
|
66
169
|
* @return 0 or an error code
|
67
170
|
*/
|
68
|
-
GIT_EXTERN(int)
|
171
|
+
GIT_EXTERN(int) git_odb_backend_loose(
|
172
|
+
git_odb_backend **out,
|
173
|
+
const char *objects_dir,
|
174
|
+
int compression_level,
|
175
|
+
int do_fsync,
|
176
|
+
unsigned int dir_mode,
|
177
|
+
unsigned int file_mode);
|
178
|
+
|
179
|
+
#endif
|
69
180
|
|
70
181
|
/** Streaming mode */
|
71
182
|
typedef enum {
|
72
183
|
GIT_STREAM_RDONLY = (1 << 1),
|
73
184
|
GIT_STREAM_WRONLY = (1 << 2),
|
74
|
-
GIT_STREAM_RW = (GIT_STREAM_RDONLY | GIT_STREAM_WRONLY)
|
185
|
+
GIT_STREAM_RW = (GIT_STREAM_RDONLY | GIT_STREAM_WRONLY)
|
75
186
|
} git_odb_stream_t;
|
76
187
|
|
77
188
|
/**
|
@@ -87,6 +198,10 @@ struct git_odb_stream {
|
|
87
198
|
unsigned int mode;
|
88
199
|
void *hash_ctx;
|
89
200
|
|
201
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
202
|
+
git_oid_t oid_type;
|
203
|
+
#endif
|
204
|
+
|
90
205
|
git_object_size_t declared_size;
|
91
206
|
git_object_size_t received_bytes;
|
92
207
|
|
@@ -130,6 +245,7 @@ struct git_odb_writepack {
|
|
130
245
|
void GIT_CALLBACK(free)(git_odb_writepack *writepack);
|
131
246
|
};
|
132
247
|
|
248
|
+
/** @} */
|
133
249
|
GIT_END_DECL
|
134
250
|
|
135
251
|
#endif
|