rugged 1.6.3 → 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/ext/rugged/rugged_allocator.c +0 -54
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +25 -17
- data/vendor/libgit2/COPYING +195 -1
- data/vendor/libgit2/cmake/CheckPrototypeDefinitionSafe.cmake +16 -0
- data/vendor/libgit2/cmake/{FindIconv.cmake → FindIntlIconv.cmake} +6 -0
- data/vendor/libgit2/cmake/FindLLHTTP.cmake +39 -0
- data/vendor/libgit2/cmake/SelectGSSAPI.cmake +4 -4
- data/vendor/libgit2/cmake/SelectHTTPParser.cmake +23 -8
- data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +34 -6
- data/vendor/libgit2/cmake/SelectHashes.cmake +32 -11
- data/vendor/libgit2/cmake/SelectRegex.cmake +6 -1
- data/vendor/libgit2/cmake/SelectSSH.cmake +22 -17
- data/vendor/libgit2/cmake/SelectXdiff.cmake +9 -0
- data/vendor/libgit2/cmake/SelectZlib.cmake +4 -0
- 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 +1 -1
- 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 +4 -4
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +21 -21
- 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 +1 -0
- 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/xdiff/CMakeLists.txt +28 -0
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/git-xdiff.h +4 -1
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xdiffi.c +19 -18
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xdiffi.h +2 -4
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xemit.c +3 -3
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xhistogram.c +7 -18
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xmacros.h +18 -1
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xmerge.c +22 -20
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xpatience.c +21 -30
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xprepare.c +13 -30
- data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xutils.c +18 -1
- data/vendor/libgit2/{src/libgit2 → 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 +5 -27
- data/vendor/libgit2/deps/zlib/crc32.c +94 -167
- data/vendor/libgit2/deps/zlib/deflate.c +358 -435
- data/vendor/libgit2/deps/zlib/deflate.h +41 -10
- data/vendor/libgit2/deps/zlib/gzguts.h +13 -18
- data/vendor/libgit2/deps/zlib/infback.c +17 -30
- data/vendor/libgit2/deps/zlib/inffast.c +1 -4
- data/vendor/libgit2/deps/zlib/inffast.h +1 -1
- data/vendor/libgit2/deps/zlib/inflate.c +36 -102
- 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 +287 -352
- data/vendor/libgit2/deps/zlib/zconf.h +23 -14
- data/vendor/libgit2/deps/zlib/zlib.h +202 -202
- data/vendor/libgit2/deps/zlib/zutil.c +18 -44
- data/vendor/libgit2/deps/zlib/zutil.h +13 -33
- data/vendor/libgit2/include/git2/annotated_commit.h +12 -5
- data/vendor/libgit2/include/git2/apply.h +27 -6
- data/vendor/libgit2/include/git2/attr.h +17 -4
- data/vendor/libgit2/include/git2/blame.h +133 -28
- data/vendor/libgit2/include/git2/blob.h +71 -28
- data/vendor/libgit2/include/git2/branch.h +22 -15
- data/vendor/libgit2/include/git2/buffer.h +6 -4
- data/vendor/libgit2/include/git2/cert.h +2 -1
- data/vendor/libgit2/include/git2/checkout.h +83 -32
- data/vendor/libgit2/include/git2/cherrypick.h +10 -3
- data/vendor/libgit2/include/git2/clone.h +25 -9
- data/vendor/libgit2/include/git2/commit.h +132 -3
- data/vendor/libgit2/include/git2/common.h +138 -56
- data/vendor/libgit2/include/git2/config.h +93 -23
- data/vendor/libgit2/include/git2/credential.h +30 -2
- data/vendor/libgit2/include/git2/credential_helpers.h +1 -0
- data/vendor/libgit2/include/git2/deprecated.h +133 -3
- data/vendor/libgit2/include/git2/describe.h +13 -1
- data/vendor/libgit2/include/git2/diff.h +77 -9
- data/vendor/libgit2/include/git2/email.h +9 -29
- data/vendor/libgit2/include/git2/errors.h +49 -74
- data/vendor/libgit2/include/git2/filter.h +14 -7
- data/vendor/libgit2/include/git2/global.h +8 -1
- data/vendor/libgit2/include/git2/graph.h +3 -2
- data/vendor/libgit2/include/git2/ignore.h +10 -0
- data/vendor/libgit2/include/git2/index.h +100 -6
- data/vendor/libgit2/include/git2/indexer.h +21 -4
- data/vendor/libgit2/include/git2/mailmap.h +7 -1
- data/vendor/libgit2/include/git2/merge.h +46 -1
- data/vendor/libgit2/include/git2/message.h +2 -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 +9 -8
- data/vendor/libgit2/include/git2/odb.h +91 -49
- data/vendor/libgit2/include/git2/odb_backend.h +80 -52
- data/vendor/libgit2/include/git2/oid.h +24 -25
- data/vendor/libgit2/include/git2/oidarray.h +7 -1
- data/vendor/libgit2/include/git2/pack.h +13 -1
- data/vendor/libgit2/include/git2/patch.h +2 -3
- data/vendor/libgit2/include/git2/pathspec.h +9 -0
- data/vendor/libgit2/include/git2/proxy.h +10 -0
- data/vendor/libgit2/include/git2/rebase.h +9 -6
- data/vendor/libgit2/include/git2/refdb.h +2 -2
- data/vendor/libgit2/include/git2/reflog.h +3 -2
- data/vendor/libgit2/include/git2/refs.h +9 -6
- data/vendor/libgit2/include/git2/refspec.h +14 -4
- data/vendor/libgit2/include/git2/remote.h +112 -18
- data/vendor/libgit2/include/git2/repository.h +61 -15
- data/vendor/libgit2/include/git2/reset.h +16 -3
- data/vendor/libgit2/include/git2/revert.h +9 -4
- data/vendor/libgit2/include/git2/revparse.h +3 -3
- data/vendor/libgit2/include/git2/revwalk.h +3 -2
- data/vendor/libgit2/include/git2/signature.h +46 -1
- data/vendor/libgit2/include/git2/stash.h +17 -3
- data/vendor/libgit2/include/git2/status.h +10 -6
- data/vendor/libgit2/include/git2/stdint.h +87 -85
- data/vendor/libgit2/include/git2/strarray.h +2 -3
- data/vendor/libgit2/include/git2/submodule.h +20 -9
- 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 +109 -58
- 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 +7 -3
- 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 +8 -1
- data/vendor/libgit2/include/git2/sys/repository.h +63 -3
- data/vendor/libgit2/include/git2/sys/stream.h +25 -2
- data/vendor/libgit2/include/git2/sys/transport.h +44 -5
- data/vendor/libgit2/include/git2/tag.h +3 -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 +16 -5
- data/vendor/libgit2/include/git2/types.h +19 -3
- data/vendor/libgit2/include/git2/version.h +44 -8
- data/vendor/libgit2/include/git2/worktree.h +19 -7
- data/vendor/libgit2/src/CMakeLists.txt +40 -15
- data/vendor/libgit2/src/cli/CMakeLists.txt +2 -2
- data/vendor/libgit2/src/cli/cmd.c +1 -1
- data/vendor/libgit2/src/cli/cmd.h +4 -0
- data/vendor/libgit2/src/cli/cmd_blame.c +287 -0
- data/vendor/libgit2/src/cli/cmd_cat_file.c +6 -8
- data/vendor/libgit2/src/cli/cmd_clone.c +27 -13
- data/vendor/libgit2/src/cli/cmd_config.c +241 -0
- data/vendor/libgit2/src/cli/cmd_hash_object.c +6 -8
- data/vendor/libgit2/src/cli/cmd_help.c +6 -7
- 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 +1 -1
- data/vendor/libgit2/src/cli/main.c +52 -24
- data/vendor/libgit2/src/cli/opt.c +29 -3
- data/vendor/libgit2/src/cli/opt.h +21 -3
- data/vendor/libgit2/src/cli/opt_usage.c +102 -33
- data/vendor/libgit2/src/cli/opt_usage.h +6 -1
- data/vendor/libgit2/src/cli/progress.c +60 -10
- data/vendor/libgit2/src/cli/progress.h +16 -4
- data/vendor/libgit2/src/cli/unix/sighandler.c +2 -1
- data/vendor/libgit2/src/cli/win32/precompiled.h +1 -1
- data/vendor/libgit2/src/cli/win32/sighandler.c +1 -1
- data/vendor/libgit2/src/libgit2/CMakeLists.txt +27 -27
- data/vendor/libgit2/src/libgit2/annotated_commit.c +2 -2
- data/vendor/libgit2/src/libgit2/annotated_commit.h +1 -1
- data/vendor/libgit2/src/libgit2/apply.c +14 -16
- data/vendor/libgit2/src/libgit2/attr.c +30 -13
- data/vendor/libgit2/src/libgit2/attr_file.c +7 -2
- data/vendor/libgit2/src/libgit2/attr_file.h +2 -0
- data/vendor/libgit2/src/libgit2/attrcache.c +69 -33
- data/vendor/libgit2/src/libgit2/attrcache.h +5 -9
- data/vendor/libgit2/src/libgit2/blame.c +152 -59
- data/vendor/libgit2/src/libgit2/blame.h +1 -0
- data/vendor/libgit2/src/libgit2/blame_git.c +0 -1
- data/vendor/libgit2/src/libgit2/branch.c +2 -2
- data/vendor/libgit2/src/libgit2/cache.c +22 -17
- data/vendor/libgit2/src/libgit2/cache.h +7 -9
- data/vendor/libgit2/src/libgit2/checkout.c +34 -24
- data/vendor/libgit2/src/libgit2/checkout.h +0 -2
- data/vendor/libgit2/src/libgit2/cherrypick.c +4 -5
- data/vendor/libgit2/src/libgit2/clone.c +186 -164
- data/vendor/libgit2/src/libgit2/clone.h +4 -1
- data/vendor/libgit2/src/libgit2/commit.c +123 -9
- data/vendor/libgit2/src/libgit2/commit_graph.c +166 -88
- data/vendor/libgit2/src/libgit2/commit_graph.h +21 -6
- data/vendor/libgit2/src/libgit2/commit_list.c +12 -5
- data/vendor/libgit2/src/libgit2/commit_list.h +1 -0
- data/vendor/libgit2/src/libgit2/config.c +394 -300
- data/vendor/libgit2/src/libgit2/config.cmake.in +3 -0
- data/vendor/libgit2/src/libgit2/config.h +9 -4
- data/vendor/libgit2/src/libgit2/config_backend.h +8 -10
- data/vendor/libgit2/src/libgit2/config_cache.c +4 -5
- data/vendor/libgit2/src/libgit2/config_file.c +113 -96
- 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 +194 -40
- data/vendor/libgit2/src/libgit2/config_parse.c +10 -9
- data/vendor/libgit2/src/libgit2/config_snapshot.c +24 -31
- data/vendor/libgit2/src/libgit2/describe.c +34 -31
- data/vendor/libgit2/src/libgit2/diff.c +17 -8
- data/vendor/libgit2/src/libgit2/diff.h +6 -6
- data/vendor/libgit2/src/libgit2/diff_driver.c +12 -19
- data/vendor/libgit2/src/libgit2/diff_driver.h +2 -2
- data/vendor/libgit2/src/libgit2/diff_file.c +7 -7
- data/vendor/libgit2/src/libgit2/diff_generate.c +39 -18
- data/vendor/libgit2/src/libgit2/diff_parse.c +22 -6
- data/vendor/libgit2/src/libgit2/diff_print.c +88 -13
- data/vendor/libgit2/src/libgit2/diff_tform.c +40 -12
- data/vendor/libgit2/src/libgit2/diff_xdiff.h +1 -1
- data/vendor/libgit2/src/libgit2/email.c +5 -3
- data/vendor/libgit2/src/libgit2/fetch.c +39 -9
- data/vendor/libgit2/src/libgit2/fetch.h +0 -2
- data/vendor/libgit2/src/libgit2/fetchhead.c +11 -9
- data/vendor/libgit2/src/libgit2/filter.c +5 -5
- data/vendor/libgit2/src/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/libgit2/graph.c +1 -1
- data/vendor/libgit2/src/libgit2/hashmap_oid.h +30 -0
- data/vendor/libgit2/src/libgit2/ident.c +3 -3
- data/vendor/libgit2/src/libgit2/ignore.c +9 -5
- data/vendor/libgit2/src/libgit2/index.c +392 -208
- data/vendor/libgit2/src/libgit2/index.h +16 -3
- data/vendor/libgit2/src/libgit2/index_map.c +95 -0
- data/vendor/libgit2/src/libgit2/index_map.h +28 -0
- data/vendor/libgit2/src/libgit2/indexer.c +44 -41
- data/vendor/libgit2/src/libgit2/iterator.c +34 -13
- data/vendor/libgit2/src/libgit2/iterator.h +3 -0
- data/vendor/libgit2/src/libgit2/libgit2.c +155 -331
- data/vendor/libgit2/src/libgit2/mailmap.c +1 -1
- data/vendor/libgit2/src/libgit2/merge.c +56 -46
- data/vendor/libgit2/src/libgit2/merge_driver.c +2 -2
- data/vendor/libgit2/src/libgit2/merge_file.c +0 -2
- data/vendor/libgit2/src/libgit2/midx.c +86 -44
- data/vendor/libgit2/src/libgit2/midx.h +13 -3
- data/vendor/libgit2/src/libgit2/mwindow.c +38 -45
- data/vendor/libgit2/src/libgit2/mwindow.h +4 -0
- data/vendor/libgit2/src/libgit2/notes.c +9 -8
- data/vendor/libgit2/src/libgit2/object.c +42 -16
- data/vendor/libgit2/src/libgit2/object.h +6 -0
- data/vendor/libgit2/src/libgit2/odb.c +16 -9
- data/vendor/libgit2/src/libgit2/odb_mempack.c +49 -17
- data/vendor/libgit2/src/libgit2/odb_pack.c +28 -7
- data/vendor/libgit2/src/libgit2/oid.c +35 -2
- data/vendor/libgit2/src/libgit2/oid.h +11 -0
- data/vendor/libgit2/src/libgit2/oidarray.c +49 -3
- data/vendor/libgit2/src/libgit2/oidarray.h +5 -1
- data/vendor/libgit2/src/libgit2/pack-objects.c +77 -43
- data/vendor/libgit2/src/libgit2/pack-objects.h +17 -6
- data/vendor/libgit2/src/libgit2/pack.c +33 -27
- data/vendor/libgit2/src/libgit2/pack.h +15 -10
- data/vendor/libgit2/src/libgit2/parse.c +7 -4
- data/vendor/libgit2/src/libgit2/parse.h +1 -1
- data/vendor/libgit2/src/libgit2/patch.h +7 -1
- data/vendor/libgit2/src/libgit2/patch_generate.c +24 -5
- data/vendor/libgit2/src/libgit2/patch_parse.c +18 -10
- data/vendor/libgit2/src/libgit2/path.c +1 -1
- data/vendor/libgit2/src/libgit2/pathspec.c +1 -1
- data/vendor/libgit2/src/libgit2/push.c +81 -30
- data/vendor/libgit2/src/libgit2/push.h +1 -0
- data/vendor/libgit2/src/libgit2/reader.c +1 -1
- data/vendor/libgit2/src/libgit2/rebase.c +72 -84
- data/vendor/libgit2/src/libgit2/refdb_fs.c +146 -70
- data/vendor/libgit2/src/libgit2/reflog.c +1 -2
- data/vendor/libgit2/src/libgit2/reflog.h +2 -0
- data/vendor/libgit2/src/libgit2/refs.c +34 -8
- data/vendor/libgit2/src/libgit2/refs.h +6 -1
- data/vendor/libgit2/src/libgit2/refspec.c +28 -1
- data/vendor/libgit2/src/libgit2/refspec.h +8 -0
- data/vendor/libgit2/src/libgit2/remote.c +136 -67
- data/vendor/libgit2/src/libgit2/remote.h +1 -0
- data/vendor/libgit2/src/libgit2/repository.c +789 -330
- data/vendor/libgit2/src/libgit2/repository.h +22 -3
- data/vendor/libgit2/src/libgit2/reset.c +2 -2
- data/vendor/libgit2/src/libgit2/revert.c +9 -13
- data/vendor/libgit2/src/libgit2/revparse.c +6 -3
- data/vendor/libgit2/src/libgit2/revwalk.c +36 -11
- data/vendor/libgit2/src/libgit2/revwalk.h +3 -3
- data/vendor/libgit2/src/libgit2/settings.c +468 -0
- data/vendor/libgit2/src/libgit2/settings.h +6 -2
- data/vendor/libgit2/src/libgit2/signature.c +132 -15
- data/vendor/libgit2/src/libgit2/signature.h +0 -1
- data/vendor/libgit2/src/libgit2/stash.c +9 -8
- data/vendor/libgit2/src/libgit2/status.c +1 -1
- data/vendor/libgit2/src/libgit2/streams/mbedtls.c +54 -61
- data/vendor/libgit2/src/libgit2/streams/openssl.c +40 -23
- data/vendor/libgit2/src/libgit2/streams/openssl.h +2 -0
- data/vendor/libgit2/src/libgit2/streams/openssl_dynamic.c +4 -0
- data/vendor/libgit2/src/libgit2/streams/openssl_dynamic.h +3 -0
- 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 +237 -51
- data/vendor/libgit2/src/libgit2/streams/socket.h +3 -1
- data/vendor/libgit2/src/libgit2/streams/stransport.c +79 -19
- data/vendor/libgit2/src/libgit2/streams/tls.c +5 -0
- data/vendor/libgit2/src/libgit2/submodule.c +106 -63
- data/vendor/libgit2/src/libgit2/submodule.h +9 -10
- data/vendor/libgit2/src/libgit2/tag.c +1 -1
- data/vendor/libgit2/src/libgit2/trailer.c +6 -6
- data/vendor/libgit2/src/libgit2/transaction.c +26 -20
- data/vendor/libgit2/src/libgit2/transaction.h +4 -1
- data/vendor/libgit2/src/libgit2/transport.c +4 -1
- data/vendor/libgit2/src/libgit2/transports/auth.h +1 -2
- data/vendor/libgit2/src/libgit2/transports/{auth_negotiate.c → auth_gssapi.c} +32 -32
- data/vendor/libgit2/src/libgit2/transports/auth_negotiate.h +1 -1
- data/vendor/libgit2/src/libgit2/transports/auth_ntlm.h +1 -1
- data/vendor/libgit2/src/libgit2/transports/{auth_ntlm.c → auth_ntlmclient.c} +12 -12
- data/vendor/libgit2/src/libgit2/transports/auth_sspi.c +341 -0
- data/vendor/libgit2/src/libgit2/transports/credential.c +1 -1
- data/vendor/libgit2/src/libgit2/transports/git.c +7 -8
- data/vendor/libgit2/src/libgit2/transports/http.c +8 -4
- data/vendor/libgit2/src/libgit2/transports/http.h +0 -10
- data/vendor/libgit2/src/libgit2/transports/httpclient.c +117 -72
- data/vendor/libgit2/src/libgit2/transports/httpparser.c +128 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.h +99 -0
- data/vendor/libgit2/src/libgit2/transports/local.c +21 -11
- data/vendor/libgit2/src/libgit2/transports/smart.c +50 -32
- data/vendor/libgit2/src/libgit2/transports/smart.h +26 -9
- data/vendor/libgit2/src/libgit2/transports/smart_pkt.c +139 -18
- data/vendor/libgit2/src/libgit2/transports/smart_protocol.c +209 -57
- data/vendor/libgit2/src/libgit2/transports/ssh.c +41 -1103
- 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/libgit2/transports/ssh_libssh2.c +1126 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_libssh2.h +28 -0
- data/vendor/libgit2/src/libgit2/transports/winhttp.c +48 -21
- data/vendor/libgit2/src/libgit2/tree-cache.c +26 -16
- data/vendor/libgit2/src/libgit2/tree-cache.h +5 -3
- data/vendor/libgit2/src/libgit2/tree.c +35 -27
- data/vendor/libgit2/src/libgit2/tree.h +3 -2
- data/vendor/libgit2/src/libgit2/worktree.c +39 -27
- data/vendor/libgit2/src/util/CMakeLists.txt +4 -6
- data/vendor/libgit2/src/util/alloc.c +69 -7
- data/vendor/libgit2/src/util/alloc.h +34 -9
- data/vendor/libgit2/src/util/allocators/debugalloc.c +73 -0
- data/vendor/libgit2/src/{cli/cli.h → util/allocators/debugalloc.h} +6 -9
- data/vendor/libgit2/src/util/allocators/failalloc.c +0 -60
- data/vendor/libgit2/src/util/allocators/failalloc.h +0 -6
- data/vendor/libgit2/src/util/allocators/stdalloc.c +2 -115
- data/vendor/libgit2/src/util/allocators/win32_leakcheck.c +0 -68
- data/vendor/libgit2/src/util/array.h +24 -18
- data/vendor/libgit2/src/util/cc-compat.h +4 -0
- data/vendor/libgit2/src/util/ctype_compat.h +70 -0
- data/vendor/libgit2/src/util/date.c +22 -14
- data/vendor/libgit2/src/util/date.h +12 -0
- data/vendor/libgit2/src/util/errors.c +401 -0
- data/vendor/libgit2/src/{libgit2 → util}/errors.h +21 -17
- data/vendor/libgit2/src/util/filebuf.c +6 -1
- data/vendor/libgit2/src/util/filebuf.h +19 -6
- data/vendor/libgit2/src/util/fs_path.c +16 -5
- data/vendor/libgit2/src/util/fs_path.h +23 -0
- data/vendor/libgit2/src/util/futils.c +14 -10
- data/vendor/libgit2/src/util/futils.h +13 -4
- data/vendor/libgit2/src/util/git2_features.h.in +21 -4
- data/vendor/libgit2/src/util/git2_util.h +6 -0
- data/vendor/libgit2/src/util/hash/openssl.c +152 -0
- data/vendor/libgit2/src/util/hash/openssl.h +17 -1
- data/vendor/libgit2/src/util/hash/sha.h +4 -1
- data/vendor/libgit2/src/util/hashmap.h +424 -0
- data/vendor/libgit2/src/util/hashmap_str.h +43 -0
- data/vendor/libgit2/src/util/integer.h +3 -1
- data/vendor/libgit2/src/util/net.c +318 -161
- data/vendor/libgit2/src/util/net.h +27 -0
- data/vendor/libgit2/src/util/pool.c +1 -1
- data/vendor/libgit2/src/util/pool.h +5 -0
- data/vendor/libgit2/src/util/posix.c +54 -0
- data/vendor/libgit2/src/util/posix.h +22 -0
- data/vendor/libgit2/src/util/pqueue.h +1 -1
- data/vendor/libgit2/src/util/process.h +222 -0
- data/vendor/libgit2/src/util/rand.c +6 -10
- data/vendor/libgit2/src/util/regexp.c +1 -1
- data/vendor/libgit2/src/util/sortedcache.c +14 -13
- data/vendor/libgit2/src/util/sortedcache.h +3 -3
- data/vendor/libgit2/src/util/staticstr.h +66 -0
- data/vendor/libgit2/src/util/str.c +2 -2
- data/vendor/libgit2/src/util/strlist.c +108 -0
- data/vendor/libgit2/src/util/strlist.h +36 -0
- data/vendor/libgit2/src/util/unix/posix.h +0 -2
- data/vendor/libgit2/src/util/unix/process.c +629 -0
- data/vendor/libgit2/src/util/unix/realpath.c +23 -5
- data/vendor/libgit2/src/util/util.c +17 -12
- data/vendor/libgit2/src/util/util.h +28 -54
- data/vendor/libgit2/src/util/vector.c +3 -3
- data/vendor/libgit2/src/util/vector.h +2 -2
- data/vendor/libgit2/src/util/win32/error.c +1 -1
- data/vendor/libgit2/src/util/win32/path_w32.c +8 -8
- data/vendor/libgit2/src/util/win32/posix_w32.c +30 -7
- data/vendor/libgit2/src/util/win32/process.c +506 -0
- data/vendor/libgit2/src/util/win32/utf-conv.c +73 -75
- data/vendor/libgit2/src/util/win32/utf-conv.h +81 -14
- data/vendor/libgit2/src/util/win32/w32_util.c +1 -1
- metadata +72 -49
- data/vendor/libgit2/cmake/SelectWinHTTP.cmake +0 -17
- 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/libgit2/config_entries.c +0 -237
- data/vendor/libgit2/src/libgit2/config_entries.h +0 -24
- data/vendor/libgit2/src/libgit2/errors.c +0 -238
- data/vendor/libgit2/src/libgit2/idxmap.c +0 -157
- data/vendor/libgit2/src/libgit2/idxmap.h +0 -177
- data/vendor/libgit2/src/libgit2/libgit2.h +0 -15
- data/vendor/libgit2/src/libgit2/netops.c +0 -124
- data/vendor/libgit2/src/libgit2/netops.h +0 -68
- data/vendor/libgit2/src/libgit2/offmap.c +0 -101
- data/vendor/libgit2/src/libgit2/offmap.h +0 -133
- data/vendor/libgit2/src/libgit2/oidmap.c +0 -107
- data/vendor/libgit2/src/libgit2/oidmap.h +0 -128
- data/vendor/libgit2/src/libgit2/threadstate.c +0 -84
- data/vendor/libgit2/src/libgit2/threadstate.h +0 -24
- data/vendor/libgit2/src/libgit2/transports/ssh.h +0 -14
- data/vendor/libgit2/src/util/khash.h +0 -615
- data/vendor/libgit2/src/util/strmap.c +0 -100
- data/vendor/libgit2/src/util/strmap.h +0 -131
- /data/vendor/libgit2/cmake/{FindHTTPParser.cmake → FindHTTP_Parser.cmake} +0 -0
- /data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xdiff.h +0 -0
- /data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xemit.h +0 -0
- /data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xinclude.h +0 -0
- /data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xprepare.h +0 -0
- /data/vendor/libgit2/{src/libgit2 → deps}/xdiff/xtypes.h +0 -0
@@ -15,9 +15,14 @@
|
|
15
15
|
|
16
16
|
/**
|
17
17
|
* @file git2/index.h
|
18
|
-
* @brief
|
18
|
+
* @brief Index (aka "cache" aka "staging area")
|
19
19
|
* @defgroup git_index Git index parsing and manipulation routines
|
20
20
|
* @ingroup Git
|
21
|
+
*
|
22
|
+
* The index (or "cache", or "staging area") is the contents of the
|
23
|
+
* next commit. In addition, the index stores other data, such as
|
24
|
+
* conflicts that occurred during the last merge operation, and
|
25
|
+
* the "treecache" to speed up various on-disk operations.
|
21
26
|
* @{
|
22
27
|
*/
|
23
28
|
GIT_BEGIN_DECL
|
@@ -77,8 +82,11 @@ typedef struct git_index_entry {
|
|
77
82
|
* data in the `flags`.
|
78
83
|
*/
|
79
84
|
|
85
|
+
/** Mask for name length */
|
80
86
|
#define GIT_INDEX_ENTRY_NAMEMASK (0x0fff)
|
87
|
+
/** Mask for index entry stage */
|
81
88
|
#define GIT_INDEX_ENTRY_STAGEMASK (0x3000)
|
89
|
+
/** Shift bits for index entry */
|
82
90
|
#define GIT_INDEX_ENTRY_STAGESHIFT 12
|
83
91
|
|
84
92
|
/**
|
@@ -89,9 +97,17 @@ typedef enum {
|
|
89
97
|
GIT_INDEX_ENTRY_VALID = (0x8000)
|
90
98
|
} git_index_entry_flag_t;
|
91
99
|
|
100
|
+
/**
|
101
|
+
* Macro to get the stage value (0 for the "main index", or a conflict
|
102
|
+
* value) from an index entry.
|
103
|
+
*/
|
92
104
|
#define GIT_INDEX_ENTRY_STAGE(E) \
|
93
105
|
(((E)->flags & GIT_INDEX_ENTRY_STAGEMASK) >> GIT_INDEX_ENTRY_STAGESHIFT)
|
94
106
|
|
107
|
+
/**
|
108
|
+
* Macro to set the stage value (0 for the "main index", or a conflict
|
109
|
+
* value) for an index entry.
|
110
|
+
*/
|
95
111
|
#define GIT_INDEX_ENTRY_STAGE_SET(E,S) do { \
|
96
112
|
(E)->flags = ((E)->flags & ~GIT_INDEX_ENTRY_STAGEMASK) | \
|
97
113
|
(((S) & 0x03) << GIT_INDEX_ENTRY_STAGESHIFT); } while (0)
|
@@ -131,7 +147,14 @@ typedef enum {
|
|
131
147
|
} git_index_capability_t;
|
132
148
|
|
133
149
|
|
134
|
-
/**
|
150
|
+
/**
|
151
|
+
* Callback for APIs that add/remove/update files matching pathspec
|
152
|
+
*
|
153
|
+
* @param path the path
|
154
|
+
* @param matched_pathspec the given pathspec
|
155
|
+
* @param payload the user-specified payload
|
156
|
+
* @return 0 to continue with the index operation, positive number to skip this file for the index operation, negative number on failure
|
157
|
+
*/
|
135
158
|
typedef int GIT_CALLBACK(git_index_matched_path_cb)(
|
136
159
|
const char *path, const char *matched_pathspec, void *payload);
|
137
160
|
|
@@ -166,6 +189,74 @@ typedef enum {
|
|
166
189
|
GIT_INDEX_STAGE_THEIRS = 3
|
167
190
|
} git_index_stage_t;
|
168
191
|
|
192
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
193
|
+
|
194
|
+
/**
|
195
|
+
* The options for opening or creating an index.
|
196
|
+
*
|
197
|
+
* Initialize with `GIT_INDEX_OPTIONS_INIT`. Alternatively, you can
|
198
|
+
* use `git_index_options_init`.
|
199
|
+
*
|
200
|
+
* @options[version] GIT_INDEX_OPTIONS_VERSION
|
201
|
+
* @options[init_macro] GIT_INDEX_OPTIONS_INIT
|
202
|
+
* @options[init_function] git_index_options_init
|
203
|
+
*/
|
204
|
+
typedef struct git_index_options {
|
205
|
+
unsigned int version; /**< The version */
|
206
|
+
|
207
|
+
/**
|
208
|
+
* The object ID type for the object IDs that exist in the index.
|
209
|
+
*
|
210
|
+
* If this is not specified, this defaults to `GIT_OID_SHA1`.
|
211
|
+
*/
|
212
|
+
git_oid_t oid_type;
|
213
|
+
} git_index_options;
|
214
|
+
|
215
|
+
/** Current version for the `git_index_options` structure */
|
216
|
+
#define GIT_INDEX_OPTIONS_VERSION 1
|
217
|
+
|
218
|
+
/** Static constructor for `git_index_options` */
|
219
|
+
#define GIT_INDEX_OPTIONS_INIT { GIT_INDEX_OPTIONS_VERSION }
|
220
|
+
|
221
|
+
/**
|
222
|
+
* Initialize git_index_options structure
|
223
|
+
*
|
224
|
+
* Initializes a `git_index_options` with default values. Equivalent to creating
|
225
|
+
* an instance with GIT_INDEX_OPTIONS_INIT.
|
226
|
+
*
|
227
|
+
* @param opts The `git_index_options` struct to initialize.
|
228
|
+
* @param version The struct version; pass `GIT_INDEX_OPTIONS_VERSION`.
|
229
|
+
* @return Zero on success; -1 on failure.
|
230
|
+
*/
|
231
|
+
GIT_EXTERN(int) git_index_options_init(
|
232
|
+
git_index_options *opts,
|
233
|
+
unsigned int version);
|
234
|
+
|
235
|
+
/**
|
236
|
+
* Creates a new bare Git index object, without a repository to back
|
237
|
+
* it. This index object is capable of storing SHA256 objects.
|
238
|
+
*
|
239
|
+
* @param index_out the pointer for the new index
|
240
|
+
* @param index_path the path to the index file in disk
|
241
|
+
* @param opts the options for opening the index, or NULL
|
242
|
+
* @return 0 or an error code
|
243
|
+
*/
|
244
|
+
GIT_EXTERN(int) git_index_open(
|
245
|
+
git_index **index_out,
|
246
|
+
const char *index_path,
|
247
|
+
const git_index_options *opts);
|
248
|
+
|
249
|
+
/**
|
250
|
+
* Create an in-memory index object.
|
251
|
+
*
|
252
|
+
* @param index_out the pointer for the new index
|
253
|
+
* @param opts the options for opening the index, or NULL
|
254
|
+
* @return 0 or an error code
|
255
|
+
*/
|
256
|
+
GIT_EXTERN(int) git_index_new(git_index **index_out, const git_index_options *opts);
|
257
|
+
|
258
|
+
#else
|
259
|
+
|
169
260
|
/**
|
170
261
|
* Create a new bare Git index object as a memory representation
|
171
262
|
* of the Git index file in 'index_path', without a repository
|
@@ -180,11 +271,11 @@ typedef enum {
|
|
180
271
|
*
|
181
272
|
* The index must be freed once it's no longer in use.
|
182
273
|
*
|
183
|
-
* @param
|
274
|
+
* @param index_out the pointer for the new index
|
184
275
|
* @param index_path the path to the index file in disk
|
185
276
|
* @return 0 or an error code
|
186
277
|
*/
|
187
|
-
GIT_EXTERN(int) git_index_open(git_index **
|
278
|
+
GIT_EXTERN(int) git_index_open(git_index **index_out, const char *index_path);
|
188
279
|
|
189
280
|
/**
|
190
281
|
* Create an in-memory index object.
|
@@ -194,10 +285,12 @@ GIT_EXTERN(int) git_index_open(git_index **out, const char *index_path);
|
|
194
285
|
*
|
195
286
|
* The index must be freed once it's no longer in use.
|
196
287
|
*
|
197
|
-
* @param
|
288
|
+
* @param index_out the pointer for the new index
|
198
289
|
* @return 0 or an error code
|
199
290
|
*/
|
200
|
-
GIT_EXTERN(int) git_index_new(git_index **
|
291
|
+
GIT_EXTERN(int) git_index_new(git_index **index_out);
|
292
|
+
|
293
|
+
#endif
|
201
294
|
|
202
295
|
/**
|
203
296
|
* Free an existing index object.
|
@@ -836,4 +929,5 @@ GIT_EXTERN(void) git_index_conflict_iterator_free(
|
|
836
929
|
|
837
930
|
/** @} */
|
838
931
|
GIT_END_DECL
|
932
|
+
|
839
933
|
#endif
|
@@ -4,13 +4,23 @@
|
|
4
4
|
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
5
5
|
* a Linking Exception. For full terms see the included COPYING file.
|
6
6
|
*/
|
7
|
-
#ifndef
|
8
|
-
#define
|
7
|
+
#ifndef INCLUDE_git_indexer_h__
|
8
|
+
#define INCLUDE_git_indexer_h__
|
9
9
|
|
10
10
|
#include "common.h"
|
11
11
|
#include "types.h"
|
12
12
|
#include "oid.h"
|
13
13
|
|
14
|
+
/**
|
15
|
+
* @file git2/indexer.h
|
16
|
+
* @brief Packfile indexing
|
17
|
+
* @ingroup Git
|
18
|
+
* @{
|
19
|
+
*
|
20
|
+
* Indexing is the operation of taking a packfile - which is simply a
|
21
|
+
* collection of unordered commits - and producing an "index" so that
|
22
|
+
* one can lookup a commit in the packfile by object ID.
|
23
|
+
*/
|
14
24
|
GIT_BEGIN_DECL
|
15
25
|
|
16
26
|
/** A git indexer object */
|
@@ -53,6 +63,7 @@ typedef struct git_indexer_progress {
|
|
53
63
|
*
|
54
64
|
* @param stats Structure containing information about the state of the transfer
|
55
65
|
* @param payload Payload provided by caller
|
66
|
+
* @return 0 on success or an error code
|
56
67
|
*/
|
57
68
|
typedef int GIT_CALLBACK(git_indexer_progress_cb)(const git_indexer_progress *stats, void *payload);
|
58
69
|
|
@@ -66,6 +77,9 @@ typedef struct git_indexer_options {
|
|
66
77
|
/** permissions to use creating packfile or 0 for defaults */
|
67
78
|
unsigned int mode;
|
68
79
|
|
80
|
+
/** the type of object ids in the packfile or 0 for SHA1 */
|
81
|
+
git_oid_t oid_type;
|
82
|
+
|
69
83
|
/**
|
70
84
|
* object database from which to read base objects when
|
71
85
|
* fixing thin packs. This can be NULL if there are no thin
|
@@ -85,7 +99,10 @@ typedef struct git_indexer_options {
|
|
85
99
|
unsigned char verify;
|
86
100
|
} git_indexer_options;
|
87
101
|
|
102
|
+
/** Current version for the `git_indexer_options` structure */
|
88
103
|
#define GIT_INDEXER_OPTIONS_VERSION 1
|
104
|
+
|
105
|
+
/** Static constructor for `git_indexer_options` */
|
89
106
|
#define GIT_INDEXER_OPTIONS_INIT { GIT_INDEXER_OPTIONS_VERSION }
|
90
107
|
|
91
108
|
/**
|
@@ -106,13 +123,12 @@ GIT_EXTERN(int) git_indexer_options_init(
|
|
106
123
|
*
|
107
124
|
* @param out where to store the indexer instance
|
108
125
|
* @param path to the directory where the packfile should be stored
|
109
|
-
* @param
|
126
|
+
* @param opts the options to create the indexer with
|
110
127
|
* @return 0 or an error code.
|
111
128
|
*/
|
112
129
|
GIT_EXTERN(int) git_indexer_new(
|
113
130
|
git_indexer **out,
|
114
131
|
const char *path,
|
115
|
-
git_oid_t oid_type,
|
116
132
|
git_indexer_options *opts);
|
117
133
|
#else
|
118
134
|
/**
|
@@ -190,6 +206,7 @@ GIT_EXTERN(const char *) git_indexer_name(const git_indexer *idx);
|
|
190
206
|
*/
|
191
207
|
GIT_EXTERN(void) git_indexer_free(git_indexer *idx);
|
192
208
|
|
209
|
+
/** @} */
|
193
210
|
GIT_END_DECL
|
194
211
|
|
195
212
|
#endif
|
@@ -13,10 +13,15 @@
|
|
13
13
|
|
14
14
|
/**
|
15
15
|
* @file git2/mailmap.h
|
16
|
-
* @brief
|
16
|
+
* @brief Mailmaps provide alternate email addresses for users
|
17
17
|
* @defgroup git_mailmap Git mailmap routines
|
18
18
|
* @ingroup Git
|
19
19
|
* @{
|
20
|
+
*
|
21
|
+
* A mailmap can be used to specify alternate email addresses for
|
22
|
+
* repository committers or authors. This allows systems to map
|
23
|
+
* commits made using different email addresses to the same logical
|
24
|
+
* person.
|
20
25
|
*/
|
21
26
|
GIT_BEGIN_DECL
|
22
27
|
|
@@ -112,4 +117,5 @@ GIT_EXTERN(int) git_mailmap_resolve_signature(
|
|
112
117
|
|
113
118
|
/** @} */
|
114
119
|
GIT_END_DECL
|
120
|
+
|
115
121
|
#endif
|
@@ -17,9 +17,12 @@
|
|
17
17
|
|
18
18
|
/**
|
19
19
|
* @file git2/merge.h
|
20
|
-
* @brief
|
20
|
+
* @brief Merge re-joins diverging branches of history
|
21
21
|
* @defgroup git_merge Git merge routines
|
22
22
|
* @ingroup Git
|
23
|
+
*
|
24
|
+
* Merge will take two commits and attempt to produce a commit that
|
25
|
+
* includes the changes that were made in both branches.
|
23
26
|
* @{
|
24
27
|
*/
|
25
28
|
GIT_BEGIN_DECL
|
@@ -45,7 +48,10 @@ typedef struct {
|
|
45
48
|
unsigned int mode;
|
46
49
|
} git_merge_file_input;
|
47
50
|
|
51
|
+
/** Current version for the `git_merge_file_input_options` structure */
|
48
52
|
#define GIT_MERGE_FILE_INPUT_VERSION 1
|
53
|
+
|
54
|
+
/** Static constructor for `git_merge_file_input_options` */
|
49
55
|
#define GIT_MERGE_FILE_INPUT_INIT {GIT_MERGE_FILE_INPUT_VERSION}
|
50
56
|
|
51
57
|
/**
|
@@ -180,6 +186,7 @@ typedef enum {
|
|
180
186
|
GIT_MERGE_FILE_ACCEPT_CONFLICTS = (1 << 9)
|
181
187
|
} git_merge_file_flag_t;
|
182
188
|
|
189
|
+
/** Default size for conflict markers */
|
183
190
|
#define GIT_MERGE_CONFLICT_MARKER_SIZE 7
|
184
191
|
|
185
192
|
/**
|
@@ -217,7 +224,10 @@ typedef struct {
|
|
217
224
|
unsigned short marker_size;
|
218
225
|
} git_merge_file_options;
|
219
226
|
|
227
|
+
/** Current version for the `git_merge_file_options` structure */
|
220
228
|
#define GIT_MERGE_FILE_OPTIONS_VERSION 1
|
229
|
+
|
230
|
+
/** Static constructor for `git_merge_file_options` */
|
221
231
|
#define GIT_MERGE_FILE_OPTIONS_INIT {GIT_MERGE_FILE_OPTIONS_VERSION}
|
222
232
|
|
223
233
|
/**
|
@@ -312,7 +322,10 @@ typedef struct {
|
|
312
322
|
uint32_t file_flags;
|
313
323
|
} git_merge_options;
|
314
324
|
|
325
|
+
/** Current version for the `git_merge_options` structure */
|
315
326
|
#define GIT_MERGE_OPTIONS_VERSION 1
|
327
|
+
|
328
|
+
/** Static constructor for `git_merge_options` */
|
316
329
|
#define GIT_MERGE_OPTIONS_INIT { \
|
317
330
|
GIT_MERGE_OPTIONS_VERSION, GIT_MERGE_FIND_RENAMES }
|
318
331
|
|
@@ -471,6 +484,37 @@ GIT_EXTERN(int) git_merge_base_many(
|
|
471
484
|
/**
|
472
485
|
* Find all merge bases given a list of commits
|
473
486
|
*
|
487
|
+
* This behaves similar to [`git merge-base`](https://git-scm.com/docs/git-merge-base#_discussion).
|
488
|
+
*
|
489
|
+
* Given three commits `a`, `b`, and `c`, `merge_base_many`
|
490
|
+
* will compute a hypothetical commit `m`, which is a merge between `b`
|
491
|
+
* and `c`.
|
492
|
+
|
493
|
+
* For example, with the following topology:
|
494
|
+
* ```text
|
495
|
+
* o---o---o---o---C
|
496
|
+
* /
|
497
|
+
* / o---o---o---B
|
498
|
+
* / /
|
499
|
+
* ---2---1---o---o---o---A
|
500
|
+
* ```
|
501
|
+
*
|
502
|
+
* the result of `merge_base_many` given `a`, `b`, and `c` is 1. This is
|
503
|
+
* because the equivalent topology with the imaginary merge commit `m`
|
504
|
+
* between `b` and `c` is:
|
505
|
+
* ```text
|
506
|
+
* o---o---o---o---o
|
507
|
+
* / \
|
508
|
+
* / o---o---o---o---M
|
509
|
+
* / /
|
510
|
+
* ---2---1---o---o---o---A
|
511
|
+
* ```
|
512
|
+
*
|
513
|
+
* and the result of `merge_base_many` given `a` and `m` is 1.
|
514
|
+
*
|
515
|
+
* If you're looking to recieve the common ancestor between all the
|
516
|
+
* given commits, use `merge_base_octopus`.
|
517
|
+
*
|
474
518
|
* @param out array in which to store the resulting ids
|
475
519
|
* @param repo the repository where the commits exist
|
476
520
|
* @param length The number of commits in the provided `input_array`
|
@@ -623,4 +667,5 @@ GIT_EXTERN(int) git_merge(
|
|
623
667
|
|
624
668
|
/** @} */
|
625
669
|
GIT_END_DECL
|
670
|
+
|
626
671
|
#endif
|
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
/**
|
14
14
|
* @file git2/message.h
|
15
|
-
* @brief
|
15
|
+
* @brief Commit messages
|
16
16
|
* @ingroup Git
|
17
17
|
* @{
|
18
18
|
*/
|
@@ -83,4 +83,4 @@ GIT_EXTERN(void) git_message_trailer_array_free(git_message_trailer_array *arr);
|
|
83
83
|
/** @} */
|
84
84
|
GIT_END_DECL
|
85
85
|
|
86
|
-
#endif
|
86
|
+
#endif
|
@@ -13,12 +13,13 @@
|
|
13
13
|
|
14
14
|
/**
|
15
15
|
* @file git2/net.h
|
16
|
-
* @brief
|
16
|
+
* @brief Low-level networking functionality
|
17
17
|
* @ingroup Git
|
18
18
|
* @{
|
19
19
|
*/
|
20
20
|
GIT_BEGIN_DECL
|
21
21
|
|
22
|
+
/** Default git protocol port number */
|
22
23
|
#define GIT_DEFAULT_PORT "9418"
|
23
24
|
|
24
25
|
/**
|
@@ -51,4 +52,5 @@ struct git_remote_head {
|
|
51
52
|
|
52
53
|
/** @} */
|
53
54
|
GIT_END_DECL
|
55
|
+
|
54
56
|
#endif
|
@@ -11,7 +11,7 @@
|
|
11
11
|
|
12
12
|
/**
|
13
13
|
* @file git2/notes.h
|
14
|
-
* @brief
|
14
|
+
* @brief Notes are metadata attached to an object
|
15
15
|
* @defgroup git_note Git notes management routines
|
16
16
|
* @ingroup Git
|
17
17
|
* @{
|
@@ -21,13 +21,15 @@ GIT_BEGIN_DECL
|
|
21
21
|
/**
|
22
22
|
* Callback for git_note_foreach.
|
23
23
|
*
|
24
|
-
*
|
25
|
-
*
|
26
|
-
* -
|
27
|
-
*
|
24
|
+
* @param blob_id object id of the blob containing the message
|
25
|
+
* @param annotated_object_id the id of the object being annotated
|
26
|
+
* @param payload user-specified data to the foreach function
|
27
|
+
* @return 0 on success, or a negative number on failure
|
28
28
|
*/
|
29
29
|
typedef int GIT_CALLBACK(git_note_foreach_cb)(
|
30
|
-
const git_oid *blob_id,
|
30
|
+
const git_oid *blob_id,
|
31
|
+
const git_oid *annotated_object_id,
|
32
|
+
void *payload);
|
31
33
|
|
32
34
|
/**
|
33
35
|
* note iterator
|
@@ -303,4 +305,5 @@ GIT_EXTERN(int) git_note_foreach(
|
|
303
305
|
|
304
306
|
/** @} */
|
305
307
|
GIT_END_DECL
|
308
|
+
|
306
309
|
#endif
|
@@ -14,13 +14,14 @@
|
|
14
14
|
|
15
15
|
/**
|
16
16
|
* @file git2/object.h
|
17
|
-
* @brief
|
17
|
+
* @brief Objects are blobs (files), trees (directories), commits, and annotated tags
|
18
18
|
* @defgroup git_object Git revision object management routines
|
19
19
|
* @ingroup Git
|
20
20
|
* @{
|
21
21
|
*/
|
22
22
|
GIT_BEGIN_DECL
|
23
23
|
|
24
|
+
/** Maximum size of a git object */
|
24
25
|
#define GIT_OBJECT_SIZE_MAX UINT64_MAX
|
25
26
|
|
26
27
|
/**
|
@@ -53,18 +54,18 @@ GIT_EXTERN(int) git_object_lookup(
|
|
53
54
|
*
|
54
55
|
* The object obtained will be so that its identifier
|
55
56
|
* matches the first 'len' hexadecimal characters
|
56
|
-
* (packets of 4 bits) of the given
|
57
|
-
*
|
58
|
-
*
|
59
|
-
* the
|
57
|
+
* (packets of 4 bits) of the given `id`. `len` must be
|
58
|
+
* at least `GIT_OID_MINPREFIXLEN`, and long enough to
|
59
|
+
* identify a unique object matching the prefix; otherwise
|
60
|
+
* the method will fail.
|
60
61
|
*
|
61
62
|
* The generated reference is owned by the repository and
|
62
63
|
* should be closed with the `git_object_free` method
|
63
64
|
* instead of free'd manually.
|
64
65
|
*
|
65
|
-
* The
|
66
|
+
* The `type` parameter must match the type of the object
|
66
67
|
* in the odb; the method will fail otherwise.
|
67
|
-
* The special value
|
68
|
+
* The special value `GIT_OBJECT_ANY` may be passed to let
|
68
69
|
* the method guess the object's type.
|
69
70
|
*
|
70
71
|
* @param object_out pointer where to store the looked-up object
|
@@ -260,7 +261,7 @@ GIT_EXTERN(int) git_object_rawcontent_is_valid(
|
|
260
261
|
* @warning This function is experimental and its signature may change in
|
261
262
|
* the future.
|
262
263
|
*
|
263
|
-
* @param valid Output pointer to set with validity of the object content
|
264
|
+
* @param[out] valid Output pointer to set with validity of the object content
|
264
265
|
* @param buf The contents to validate
|
265
266
|
* @param len The length of the buffer
|
266
267
|
* @param object_type The type of the object in the buffer
|