rugged 1.7.2 → 1.9.4
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/extconf.rb +4 -4
- data/ext/rugged/rugged.c +12 -1
- data/ext/rugged/rugged_blame.c +22 -6
- data/ext/rugged/rugged_blob.c +24 -9
- data/ext/rugged/rugged_branch.c +10 -7
- data/ext/rugged/rugged_branch_collection.c +8 -6
- data/ext/rugged/rugged_commit.c +7 -6
- data/ext/rugged/rugged_config.c +20 -11
- data/ext/rugged/rugged_diff.c +26 -12
- data/ext/rugged/rugged_diff_hunk.c +2 -1
- data/ext/rugged/rugged_index.c +39 -29
- data/ext/rugged/rugged_note.c +7 -6
- data/ext/rugged/rugged_object.c +3 -2
- data/ext/rugged/rugged_patch.c +23 -9
- data/ext/rugged/rugged_rebase.c +22 -10
- data/ext/rugged/rugged_reference.c +22 -13
- data/ext/rugged/rugged_reference_collection.c +9 -7
- data/ext/rugged/rugged_remote.c +23 -12
- data/ext/rugged/rugged_remote_collection.c +11 -9
- data/ext/rugged/rugged_repo.c +60 -45
- data/ext/rugged/rugged_revwalk.c +22 -12
- data/ext/rugged/rugged_submodule.c +23 -20
- data/ext/rugged/rugged_submodule_collection.c +20 -9
- data/ext/rugged/rugged_tag.c +6 -4
- data/ext/rugged/rugged_tag_collection.c +7 -5
- data/ext/rugged/rugged_tree.c +27 -15
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +3 -0
- data/vendor/libgit2/CMakeLists.txt +23 -10
- data/vendor/libgit2/COPYING +195 -1
- data/vendor/libgit2/cmake/DefaultCFlags.cmake +4 -1
- data/vendor/libgit2/cmake/{FindIconv.cmake → FindIntlIconv.cmake} +6 -0
- data/vendor/libgit2/cmake/FindLLHTTP.cmake +39 -0
- data/vendor/libgit2/cmake/SelectGSSAPI.cmake +1 -1
- data/vendor/libgit2/cmake/SelectHTTPParser.cmake +23 -8
- data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +17 -8
- data/vendor/libgit2/cmake/SelectHashes.cmake +28 -11
- data/vendor/libgit2/cmake/SelectRegex.cmake +6 -1
- data/vendor/libgit2/cmake/SelectSSH.cmake +30 -19
- 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 +3 -3
- data/vendor/libgit2/deps/xdiff/CMakeLists.txt +1 -1
- data/vendor/libgit2/deps/xdiff/xmerge.c +16 -12
- 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 +120 -63
- 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 +134 -4
- data/vendor/libgit2/include/git2/describe.h +13 -1
- data/vendor/libgit2/include/git2/diff.h +38 -8
- data/vendor/libgit2/include/git2/email.h +9 -29
- data/vendor/libgit2/include/git2/errors.h +46 -73
- 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 -15
- 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 +50 -3
- 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 +23 -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 +12 -3
- 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 +113 -25
- data/vendor/libgit2/include/git2/repository.h +57 -21
- 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 -0
- data/vendor/libgit2/include/git2/sys/commit.h +77 -3
- data/vendor/libgit2/include/git2/sys/commit_graph.h +103 -62
- 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 +43 -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 +11 -2
- data/vendor/libgit2/include/git2/sys/transport.h +25 -4
- 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 +46 -8
- data/vendor/libgit2/include/git2/worktree.h +16 -6
- data/vendor/libgit2/src/CMakeLists.txt +6 -4
- data/vendor/libgit2/src/cli/CMakeLists.txt +3 -4
- 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 +5 -7
- 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 +31 -5
- 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 +51 -2
- data/vendor/libgit2/src/cli/progress.h +12 -0
- 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 +55 -21
- data/vendor/libgit2/src/libgit2/apply.c +10 -13
- data/vendor/libgit2/src/libgit2/attr.c +30 -13
- data/vendor/libgit2/src/libgit2/attr_file.c +17 -5
- 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 +130 -44
- data/vendor/libgit2/src/libgit2/blame.h +1 -0
- 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 +1 -2
- data/vendor/libgit2/src/libgit2/clone.c +192 -166
- data/vendor/libgit2/src/libgit2/clone.h +4 -1
- data/vendor/libgit2/src/libgit2/commit.c +93 -1
- data/vendor/libgit2/src/libgit2/commit_graph.c +68 -58
- data/vendor/libgit2/src/libgit2/commit_graph.h +1 -2
- data/vendor/libgit2/src/libgit2/config.c +390 -299
- 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 +101 -89
- 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 +195 -40
- data/vendor/libgit2/src/libgit2/config_parse.c +12 -10
- data/vendor/libgit2/src/libgit2/config_snapshot.c +24 -31
- data/vendor/libgit2/src/libgit2/delta.c +5 -1
- data/vendor/libgit2/src/libgit2/describe.c +24 -24
- data/vendor/libgit2/src/libgit2/diff.c +1 -1
- data/vendor/libgit2/src/libgit2/diff_driver.c +13 -20
- data/vendor/libgit2/src/libgit2/diff_driver.h +2 -2
- data/vendor/libgit2/src/libgit2/diff_generate.c +3 -3
- data/vendor/libgit2/src/libgit2/diff_parse.c +2 -2
- data/vendor/libgit2/src/libgit2/diff_print.c +65 -9
- data/vendor/libgit2/src/libgit2/diff_stats.c +19 -12
- data/vendor/libgit2/src/libgit2/diff_tform.c +36 -8
- data/vendor/libgit2/src/libgit2/email.c +1 -0
- data/vendor/libgit2/src/libgit2/fetch.c +5 -3
- data/vendor/libgit2/src/libgit2/fetchhead.c +1 -1
- 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 +18 -20
- data/vendor/libgit2/src/libgit2/grafts.h +0 -1
- data/vendor/libgit2/src/libgit2/graph.c +1 -1
- data/vendor/libgit2/src/libgit2/hashmap_oid.h +30 -0
- data/vendor/libgit2/src/libgit2/ignore.c +9 -5
- data/vendor/libgit2/src/libgit2/index.c +76 -98
- data/vendor/libgit2/src/libgit2/index.h +5 -2
- 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 +36 -40
- data/vendor/libgit2/src/libgit2/iterator.c +14 -8
- data/vendor/libgit2/src/libgit2/libgit2.c +153 -368
- data/vendor/libgit2/src/libgit2/mailmap.c +1 -1
- data/vendor/libgit2/src/libgit2/merge.c +43 -38
- data/vendor/libgit2/src/libgit2/merge.h +4 -0
- data/vendor/libgit2/src/libgit2/merge_driver.c +2 -2
- data/vendor/libgit2/src/libgit2/merge_file.c +43 -30
- data/vendor/libgit2/src/libgit2/message.c +1 -1
- data/vendor/libgit2/src/libgit2/midx.c +30 -18
- data/vendor/libgit2/src/libgit2/mwindow.c +38 -45
- data/vendor/libgit2/src/libgit2/mwindow.h +4 -0
- data/vendor/libgit2/src/libgit2/object.c +6 -5
- data/vendor/libgit2/src/libgit2/odb.c +7 -10
- data/vendor/libgit2/src/libgit2/odb_loose.c +24 -14
- data/vendor/libgit2/src/libgit2/odb_mempack.c +49 -17
- data/vendor/libgit2/src/libgit2/odb_pack.c +13 -5
- data/vendor/libgit2/src/libgit2/oid.c +36 -10
- data/vendor/libgit2/src/libgit2/oid.h +11 -0
- data/vendor/libgit2/src/libgit2/pack-objects.c +59 -34
- data/vendor/libgit2/src/libgit2/pack-objects.h +12 -4
- data/vendor/libgit2/src/libgit2/pack.c +33 -24
- data/vendor/libgit2/src/libgit2/pack.h +15 -10
- data/vendor/libgit2/src/libgit2/patch_parse.c +2 -2
- 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 +79 -28
- data/vendor/libgit2/src/libgit2/push.h +1 -0
- data/vendor/libgit2/src/libgit2/refdb_fs.c +128 -61
- 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 +41 -13
- 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 +125 -62
- data/vendor/libgit2/src/libgit2/remote.h +0 -1
- data/vendor/libgit2/src/libgit2/repository.c +235 -54
- data/vendor/libgit2/src/libgit2/repository.h +10 -6
- data/vendor/libgit2/src/libgit2/revert.c +1 -2
- data/vendor/libgit2/src/libgit2/revparse.c +2 -2
- data/vendor/libgit2/src/libgit2/revwalk.c +13 -10
- 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/status.c +1 -1
- data/vendor/libgit2/src/libgit2/streams/mbedtls.c +54 -60
- data/vendor/libgit2/src/libgit2/streams/openssl.c +32 -7
- 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/socket.c +30 -0
- data/vendor/libgit2/src/libgit2/streams/stransport.c +39 -7
- data/vendor/libgit2/src/libgit2/submodule.c +118 -68
- data/vendor/libgit2/src/libgit2/submodule.h +6 -7
- data/vendor/libgit2/src/libgit2/tag.c +4 -2
- 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_sspi.c +2 -0
- data/vendor/libgit2/src/libgit2/transports/credential.c +2 -2
- data/vendor/libgit2/src/libgit2/transports/git.c +1 -1
- data/vendor/libgit2/src/libgit2/transports/http.c +1 -2
- data/vendor/libgit2/src/libgit2/transports/http.h +0 -10
- data/vendor/libgit2/src/libgit2/transports/httpclient.c +124 -81
- 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 +16 -8
- data/vendor/libgit2/src/libgit2/transports/smart.c +25 -13
- data/vendor/libgit2/src/libgit2/transports/smart.h +4 -2
- data/vendor/libgit2/src/libgit2/transports/smart_pkt.c +5 -5
- data/vendor/libgit2/src/libgit2/transports/smart_protocol.c +55 -10
- data/vendor/libgit2/src/libgit2/transports/ssh.c +41 -1103
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.c +386 -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 +35 -7
- data/vendor/libgit2/src/libgit2/tree.c +34 -26
- data/vendor/libgit2/src/libgit2/tree.h +3 -2
- data/vendor/libgit2/src/libgit2/worktree.c +14 -17
- data/vendor/libgit2/src/util/CMakeLists.txt +7 -10
- data/vendor/libgit2/src/util/alloc.c +4 -1
- 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/stdalloc.c +0 -10
- data/vendor/libgit2/src/util/array.h +18 -17
- data/vendor/libgit2/src/util/cc-compat.h +2 -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/fs_path.c +81 -10
- data/vendor/libgit2/src/util/fs_path.h +29 -0
- data/vendor/libgit2/src/util/futils.c +6 -5
- data/vendor/libgit2/src/util/futils.h +24 -7
- data/vendor/libgit2/src/util/git2_features.h.in +12 -1
- data/vendor/libgit2/src/util/git2_util.h +6 -0
- data/vendor/libgit2/src/util/hash/builtin.c +14 -4
- data/vendor/libgit2/src/util/hash/openssl.c +148 -0
- data/vendor/libgit2/src/util/hash/openssl.h +17 -1
- data/vendor/libgit2/src/util/hash/rfc6234/sha224-256.c +8 -6
- data/vendor/libgit2/src/util/hash/sha.h +4 -1
- data/vendor/libgit2/src/util/hashmap.h +425 -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 +17 -11
- data/vendor/libgit2/src/util/net.h +2 -0
- data/vendor/libgit2/src/util/pool.c +1 -1
- data/vendor/libgit2/src/util/pool.h +5 -0
- data/vendor/libgit2/src/util/pqueue.h +1 -1
- data/vendor/libgit2/src/util/process.h +223 -0
- data/vendor/libgit2/src/util/rand.c +1 -7
- data/vendor/libgit2/src/util/regexp.c +1 -1
- data/vendor/libgit2/src/util/runtime.c +2 -2
- data/vendor/libgit2/src/util/sortedcache.c +14 -13
- data/vendor/libgit2/src/util/sortedcache.h +3 -3
- data/vendor/libgit2/src/util/str.c +20 -8
- data/vendor/libgit2/src/util/str.h +5 -3
- 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 +706 -0
- data/vendor/libgit2/src/util/unix/realpath.c +23 -5
- data/vendor/libgit2/src/util/util.c +18 -5
- data/vendor/libgit2/src/util/util.h +5 -38
- data/vendor/libgit2/src/util/vector.c +3 -3
- data/vendor/libgit2/src/util/vector.h +2 -2
- data/vendor/libgit2/src/util/win32/path_w32.c +81 -5
- data/vendor/libgit2/src/util/win32/posix_w32.c +29 -6
- data/vendor/libgit2/src/util/win32/process.c +522 -0
- metadata +60 -32
- 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 -293
- 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/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 -97
- data/vendor/libgit2/src/libgit2/threadstate.h +0 -22
- 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
|
@@ -12,6 +12,12 @@
|
|
|
12
12
|
#include "cert.h"
|
|
13
13
|
#include "credential.h"
|
|
14
14
|
|
|
15
|
+
/**
|
|
16
|
+
* @file git2/proxy.h
|
|
17
|
+
* @brief TLS proxies
|
|
18
|
+
* @ingroup Git
|
|
19
|
+
* @{
|
|
20
|
+
*/
|
|
15
21
|
GIT_BEGIN_DECL
|
|
16
22
|
|
|
17
23
|
/**
|
|
@@ -64,9 +70,8 @@ typedef struct {
|
|
|
64
70
|
git_credential_acquire_cb credentials;
|
|
65
71
|
|
|
66
72
|
/**
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* connection to proceed. Returns 0 to allow the connection
|
|
73
|
+
* This will be called to let the user make the final decision of whether
|
|
74
|
+
* to allow the connection to proceed. Returns 0 to allow the connection
|
|
70
75
|
* or a negative value to indicate an error.
|
|
71
76
|
*/
|
|
72
77
|
git_transport_certificate_check_cb certificate_check;
|
|
@@ -78,7 +83,10 @@ typedef struct {
|
|
|
78
83
|
void *payload;
|
|
79
84
|
} git_proxy_options;
|
|
80
85
|
|
|
86
|
+
/** Current version for the `git_proxy_options` structure */
|
|
81
87
|
#define GIT_PROXY_OPTIONS_VERSION 1
|
|
88
|
+
|
|
89
|
+
/** Static constructor for `git_proxy_options` */
|
|
82
90
|
#define GIT_PROXY_OPTIONS_INIT {GIT_PROXY_OPTIONS_VERSION}
|
|
83
91
|
|
|
84
92
|
/**
|
|
@@ -93,6 +101,7 @@ typedef struct {
|
|
|
93
101
|
*/
|
|
94
102
|
GIT_EXTERN(int) git_proxy_options_init(git_proxy_options *opts, unsigned int version);
|
|
95
103
|
|
|
104
|
+
/** @} */
|
|
96
105
|
GIT_END_DECL
|
|
97
106
|
|
|
98
107
|
#endif
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @file git2/rebase.h
|
|
20
|
-
* @brief
|
|
21
|
-
* @defgroup git_rebase
|
|
20
|
+
* @brief Rebase manipulates commits, placing them on a new parent
|
|
21
|
+
* @defgroup git_rebase Rebase manipulates commits, placing them on a new parent
|
|
22
22
|
* @ingroup Git
|
|
23
23
|
* @{
|
|
24
24
|
*/
|
|
@@ -67,10 +67,9 @@ typedef struct {
|
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
69
|
* Options to control how files are written during `git_rebase_init`,
|
|
70
|
-
* `git_rebase_next` and `git_rebase_abort`. Note that
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* `abort` to match git semantics.
|
|
70
|
+
* `git_rebase_next` and `git_rebase_abort`. Note that during
|
|
71
|
+
* `abort`, these options will add an implied `GIT_CHECKOUT_FORCE`
|
|
72
|
+
* to match git semantics.
|
|
74
73
|
*/
|
|
75
74
|
git_checkout_options checkout_options;
|
|
76
75
|
|
|
@@ -155,7 +154,10 @@ typedef enum {
|
|
|
155
154
|
GIT_REBASE_OPERATION_EXEC
|
|
156
155
|
} git_rebase_operation_t;
|
|
157
156
|
|
|
157
|
+
/** Current version for the `git_rebase_options` structure */
|
|
158
158
|
#define GIT_REBASE_OPTIONS_VERSION 1
|
|
159
|
+
|
|
160
|
+
/** Static constructor for `git_rebase_options` */
|
|
159
161
|
#define GIT_REBASE_OPTIONS_INIT \
|
|
160
162
|
{ GIT_REBASE_OPTIONS_VERSION, 0, 0, NULL, GIT_MERGE_OPTIONS_INIT, \
|
|
161
163
|
GIT_CHECKOUT_OPTIONS_INIT, NULL, NULL }
|
|
@@ -396,4 +398,5 @@ GIT_EXTERN(void) git_rebase_free(git_rebase *rebase);
|
|
|
396
398
|
|
|
397
399
|
/** @} */
|
|
398
400
|
GIT_END_DECL
|
|
401
|
+
|
|
399
402
|
#endif
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @file git2/refdb.h
|
|
17
|
-
* @brief
|
|
18
|
-
* @defgroup git_refdb
|
|
17
|
+
* @brief A database for references (branches and tags)
|
|
18
|
+
* @defgroup git_refdb A database for references (branches and tags)
|
|
19
19
|
* @ingroup Git
|
|
20
20
|
* @{
|
|
21
21
|
*/
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @file git2/reflog.h
|
|
16
|
-
* @brief
|
|
17
|
-
* @defgroup git_reflog
|
|
16
|
+
* @brief Reference logs store how references change
|
|
17
|
+
* @defgroup git_reflog Reference logs store how references change
|
|
18
18
|
* @ingroup Git
|
|
19
19
|
* @{
|
|
20
20
|
*/
|
|
@@ -167,4 +167,5 @@ GIT_EXTERN(void) git_reflog_free(git_reflog *reflog);
|
|
|
167
167
|
|
|
168
168
|
/** @} */
|
|
169
169
|
GIT_END_DECL
|
|
170
|
+
|
|
170
171
|
#endif
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @file git2/refs.h
|
|
17
|
-
* @brief
|
|
18
|
-
* @defgroup git_reference
|
|
17
|
+
* @brief References point to a commit; generally these are branches and tags
|
|
18
|
+
* @defgroup git_reference References point to a commit; generally these are branches and tags
|
|
19
19
|
* @ingroup Git
|
|
20
20
|
* @{
|
|
21
21
|
*/
|
|
@@ -29,7 +29,7 @@ GIT_BEGIN_DECL
|
|
|
29
29
|
* The name will be checked for validity.
|
|
30
30
|
* See `git_reference_symbolic_create()` for rules about valid names.
|
|
31
31
|
*
|
|
32
|
-
* @param out pointer to the looked-up reference
|
|
32
|
+
* @param[out] out pointer to the looked-up reference
|
|
33
33
|
* @param repo the repository to look up the reference
|
|
34
34
|
* @param name the long name for the reference (e.g. HEAD, refs/heads/master, refs/tags/v0.1.0, ...)
|
|
35
35
|
* @return 0 on success, GIT_ENOTFOUND, GIT_EINVALIDSPEC or an error code.
|
|
@@ -371,6 +371,7 @@ GIT_EXTERN(int) git_reference_set_target(
|
|
|
371
371
|
* reflog is enabled for the repository. We only rename
|
|
372
372
|
* the reflog if it exists.
|
|
373
373
|
*
|
|
374
|
+
* @param[out] new_ref The new reference
|
|
374
375
|
* @param ref The reference to rename
|
|
375
376
|
* @param new_name The new name for the reference
|
|
376
377
|
* @param force Overwrite an existing reference
|
|
@@ -406,6 +407,7 @@ GIT_EXTERN(int) git_reference_delete(git_reference *ref);
|
|
|
406
407
|
* This method removes the named reference from the repository without
|
|
407
408
|
* looking at its old value.
|
|
408
409
|
*
|
|
410
|
+
* @param repo The repository to remove the reference from
|
|
409
411
|
* @param name The reference to remove
|
|
410
412
|
* @return 0 or an error code
|
|
411
413
|
*/
|
|
@@ -518,7 +520,7 @@ GIT_EXTERN(int) git_reference_cmp(
|
|
|
518
520
|
/**
|
|
519
521
|
* Create an iterator for the repo's references
|
|
520
522
|
*
|
|
521
|
-
* @param out pointer in which to store the iterator
|
|
523
|
+
* @param[out] out pointer in which to store the iterator
|
|
522
524
|
* @param repo the repository
|
|
523
525
|
* @return 0 or an error code
|
|
524
526
|
*/
|
|
@@ -543,7 +545,7 @@ GIT_EXTERN(int) git_reference_iterator_glob_new(
|
|
|
543
545
|
/**
|
|
544
546
|
* Get the next reference
|
|
545
547
|
*
|
|
546
|
-
* @param out pointer in which to store the reference
|
|
548
|
+
* @param[out] out pointer in which to store the reference
|
|
547
549
|
* @param iter the iterator
|
|
548
550
|
* @return 0, GIT_ITEROVER if there are no more; or an error code
|
|
549
551
|
*/
|
|
@@ -724,7 +726,7 @@ GIT_EXTERN(int) git_reference_normalize_name(
|
|
|
724
726
|
* If you pass `GIT_OBJECT_ANY` as the target type, then the object
|
|
725
727
|
* will be peeled until a non-tag object is met.
|
|
726
728
|
*
|
|
727
|
-
* @param out Pointer to the peeled git_object
|
|
729
|
+
* @param[out] out Pointer to the peeled git_object
|
|
728
730
|
* @param ref The reference to be processed
|
|
729
731
|
* @param type The type of the requested object (GIT_OBJECT_COMMIT,
|
|
730
732
|
* GIT_OBJECT_TAG, GIT_OBJECT_TREE, GIT_OBJECT_BLOB or GIT_OBJECT_ANY).
|
|
@@ -768,4 +770,5 @@ GIT_EXTERN(const char *) git_reference_shorthand(const git_reference *ref);
|
|
|
768
770
|
|
|
769
771
|
/** @} */
|
|
770
772
|
GIT_END_DECL
|
|
773
|
+
|
|
771
774
|
#endif
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @file git2/refspec.h
|
|
17
|
-
* @brief
|
|
18
|
-
* @defgroup git_refspec
|
|
17
|
+
* @brief Refspecs map local references to remote references
|
|
18
|
+
* @defgroup git_refspec Refspecs map local references to remote references
|
|
19
19
|
* @ingroup Git
|
|
20
20
|
* @{
|
|
21
21
|
*/
|
|
@@ -58,7 +58,7 @@ GIT_EXTERN(const char *) git_refspec_dst(const git_refspec *refspec);
|
|
|
58
58
|
* Get the refspec's string
|
|
59
59
|
*
|
|
60
60
|
* @param refspec the refspec
|
|
61
|
-
* @
|
|
61
|
+
* @return the refspec's original string
|
|
62
62
|
*/
|
|
63
63
|
GIT_EXTERN(const char *) git_refspec_string(const git_refspec *refspec);
|
|
64
64
|
|
|
@@ -79,7 +79,16 @@ GIT_EXTERN(int) git_refspec_force(const git_refspec *refspec);
|
|
|
79
79
|
GIT_EXTERN(git_direction) git_refspec_direction(const git_refspec *spec);
|
|
80
80
|
|
|
81
81
|
/**
|
|
82
|
-
* Check if a refspec's source descriptor matches a reference
|
|
82
|
+
* Check if a refspec's source descriptor matches a negative reference
|
|
83
|
+
*
|
|
84
|
+
* @param refspec the refspec
|
|
85
|
+
* @param refname the name of the reference to check
|
|
86
|
+
* @return 1 if the refspec matches, 0 otherwise
|
|
87
|
+
*/
|
|
88
|
+
GIT_EXTERN(int) git_refspec_src_matches_negative(const git_refspec *refspec, const char *refname);
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Check if a refspec's source descriptor matches a reference
|
|
83
92
|
*
|
|
84
93
|
* @param refspec the refspec
|
|
85
94
|
* @param refname the name of the reference to check
|
|
@@ -116,6 +125,7 @@ GIT_EXTERN(int) git_refspec_transform(git_buf *out, const git_refspec *spec, con
|
|
|
116
125
|
*/
|
|
117
126
|
GIT_EXTERN(int) git_refspec_rtransform(git_buf *out, const git_refspec *spec, const char *name);
|
|
118
127
|
|
|
128
|
+
/** @} */
|
|
119
129
|
GIT_END_DECL
|
|
120
130
|
|
|
121
131
|
#endif
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* @file git2/remote.h
|
|
22
|
-
* @brief
|
|
23
|
-
* @defgroup git_remote
|
|
22
|
+
* @brief Remotes are where local repositories fetch from and push to
|
|
23
|
+
* @defgroup git_remote Remotes are where local repositories fetch from and push to
|
|
24
24
|
* @ingroup Git
|
|
25
25
|
* @{
|
|
26
26
|
*/
|
|
@@ -76,6 +76,17 @@ typedef enum {
|
|
|
76
76
|
GIT_REMOTE_CREATE_SKIP_DEFAULT_FETCHSPEC = (1 << 1)
|
|
77
77
|
} git_remote_create_flags;
|
|
78
78
|
|
|
79
|
+
/**
|
|
80
|
+
* How to handle reference updates.
|
|
81
|
+
*/
|
|
82
|
+
typedef enum {
|
|
83
|
+
/* Write the fetch results to FETCH_HEAD. */
|
|
84
|
+
GIT_REMOTE_UPDATE_FETCHHEAD = (1 << 0),
|
|
85
|
+
|
|
86
|
+
/* Report unchanged tips in the update_refs callback. */
|
|
87
|
+
GIT_REMOTE_UPDATE_REPORT_UNCHANGED = (1 << 1)
|
|
88
|
+
} git_remote_update_flags;
|
|
89
|
+
|
|
79
90
|
/**
|
|
80
91
|
* Remote creation options structure
|
|
81
92
|
*
|
|
@@ -105,7 +116,10 @@ typedef struct git_remote_create_options {
|
|
|
105
116
|
unsigned int flags;
|
|
106
117
|
} git_remote_create_options;
|
|
107
118
|
|
|
119
|
+
/** Current version for the `git_remote_create_options` structure */
|
|
108
120
|
#define GIT_REMOTE_CREATE_OPTIONS_VERSION 1
|
|
121
|
+
|
|
122
|
+
/** Static constructor for `git_remote_create_options` */
|
|
109
123
|
#define GIT_REMOTE_CREATE_OPTIONS_INIT {GIT_REMOTE_CREATE_OPTIONS_VERSION}
|
|
110
124
|
|
|
111
125
|
/**
|
|
@@ -235,9 +249,9 @@ GIT_EXTERN(const char *) git_remote_name(const git_remote *remote);
|
|
|
235
249
|
/**
|
|
236
250
|
* Get the remote's url
|
|
237
251
|
*
|
|
238
|
-
* If url.*.insteadOf has been configured for this URL, it will
|
|
239
|
-
*
|
|
240
|
-
*
|
|
252
|
+
* If url.*.insteadOf has been configured for this URL, it will return
|
|
253
|
+
* the modified URL. This function does not consider if a push url has
|
|
254
|
+
* been configured for this remote (use `git_remote_pushurl` if needed).
|
|
241
255
|
*
|
|
242
256
|
* @param remote the remote
|
|
243
257
|
* @return a pointer to the url
|
|
@@ -403,6 +417,19 @@ GIT_EXTERN(int) git_remote_ls(const git_remote_head ***out, size_t *size, git_r
|
|
|
403
417
|
*/
|
|
404
418
|
GIT_EXTERN(int) git_remote_connected(const git_remote *remote);
|
|
405
419
|
|
|
420
|
+
/**
|
|
421
|
+
* Get the remote repository's object format.
|
|
422
|
+
*
|
|
423
|
+
* The remote (or more exactly its transport) must have connected to
|
|
424
|
+
* the remote repository. This format is available as soon as the
|
|
425
|
+
* connection to the remote is initiated and stays connected.
|
|
426
|
+
*
|
|
427
|
+
* @param out the resulting object format type
|
|
428
|
+
* @param remote the remote
|
|
429
|
+
* @return 0 on success, or an error code
|
|
430
|
+
*/
|
|
431
|
+
GIT_EXTERN(int) git_remote_oid_type(git_oid_t *out, git_remote *remote);
|
|
432
|
+
|
|
406
433
|
/**
|
|
407
434
|
* Cancel the operation
|
|
408
435
|
*
|
|
@@ -455,7 +482,15 @@ typedef enum git_remote_completion_t {
|
|
|
455
482
|
GIT_REMOTE_COMPLETION_ERROR
|
|
456
483
|
} git_remote_completion_t;
|
|
457
484
|
|
|
458
|
-
/**
|
|
485
|
+
/**
|
|
486
|
+
* Push network progress notification callback.
|
|
487
|
+
*
|
|
488
|
+
* @param current The number of objects pushed so far
|
|
489
|
+
* @param total The total number of objects to push
|
|
490
|
+
* @param bytes The number of bytes pushed
|
|
491
|
+
* @param payload The user-specified payload callback
|
|
492
|
+
* @return 0 or an error code to stop the transfer
|
|
493
|
+
*/
|
|
459
494
|
typedef int GIT_CALLBACK(git_push_transfer_progress_cb)(
|
|
460
495
|
unsigned int current,
|
|
461
496
|
unsigned int total,
|
|
@@ -491,8 +526,12 @@ typedef struct {
|
|
|
491
526
|
* as commands to the destination.
|
|
492
527
|
* @param len number of elements in `updates`
|
|
493
528
|
* @param payload Payload provided by the caller
|
|
529
|
+
* @return 0 or an error code to stop the push
|
|
494
530
|
*/
|
|
495
|
-
typedef int GIT_CALLBACK(git_push_negotiation)(
|
|
531
|
+
typedef int GIT_CALLBACK(git_push_negotiation)(
|
|
532
|
+
const git_push_update **updates,
|
|
533
|
+
size_t len,
|
|
534
|
+
void *payload);
|
|
496
535
|
|
|
497
536
|
/**
|
|
498
537
|
* Callback used to inform of the update status from the remote.
|
|
@@ -557,7 +596,8 @@ struct git_remote_callbacks {
|
|
|
557
596
|
* Completion is called when different parts of the download
|
|
558
597
|
* process are done (currently unused).
|
|
559
598
|
*/
|
|
560
|
-
int GIT_CALLBACK(completion)(git_remote_completion_t type,
|
|
599
|
+
int GIT_CALLBACK(completion)(git_remote_completion_t type,
|
|
600
|
+
void *data);
|
|
561
601
|
|
|
562
602
|
/**
|
|
563
603
|
* This will be called if the remote host requires
|
|
@@ -569,9 +609,8 @@ struct git_remote_callbacks {
|
|
|
569
609
|
git_credential_acquire_cb credentials;
|
|
570
610
|
|
|
571
611
|
/**
|
|
572
|
-
*
|
|
573
|
-
*
|
|
574
|
-
* connection to proceed. Returns 0 to allow the connection
|
|
612
|
+
* This will be called to let the user make the final decision of whether
|
|
613
|
+
* to allow the connection to proceed. Returns 0 to allow the connection
|
|
575
614
|
* or a negative value to indicate an error.
|
|
576
615
|
*/
|
|
577
616
|
git_transport_certificate_check_cb certificate_check;
|
|
@@ -583,11 +622,22 @@ struct git_remote_callbacks {
|
|
|
583
622
|
*/
|
|
584
623
|
git_indexer_progress_cb transfer_progress;
|
|
585
624
|
|
|
625
|
+
#ifdef GIT_DEPRECATE_HARD
|
|
626
|
+
void *reserved_update_tips;
|
|
627
|
+
#else
|
|
586
628
|
/**
|
|
587
|
-
*
|
|
588
|
-
*
|
|
629
|
+
* Deprecated callback for reference updates, callers should
|
|
630
|
+
* set `update_refs` instead. This is retained for backward
|
|
631
|
+
* compatibility; if you specify both `update_refs` and
|
|
632
|
+
* `update_tips`, then only the `update_refs` function will
|
|
633
|
+
* be called.
|
|
634
|
+
*
|
|
635
|
+
* @deprecated the `update_refs` callback in this structure
|
|
636
|
+
* should be preferred
|
|
589
637
|
*/
|
|
590
|
-
int GIT_CALLBACK(update_tips)(const char *refname,
|
|
638
|
+
int GIT_CALLBACK(update_tips)(const char *refname,
|
|
639
|
+
const git_oid *a, const git_oid *b, void *data);
|
|
640
|
+
#endif
|
|
591
641
|
|
|
592
642
|
/**
|
|
593
643
|
* Function to call with progress information during pack
|
|
@@ -644,9 +694,25 @@ struct git_remote_callbacks {
|
|
|
644
694
|
*/
|
|
645
695
|
git_url_resolve_cb resolve_url;
|
|
646
696
|
#endif
|
|
697
|
+
|
|
698
|
+
/**
|
|
699
|
+
* Each time a reference is updated locally, this function
|
|
700
|
+
* will be called with information about it. This should be
|
|
701
|
+
* preferred over the `update_tips` callback in this
|
|
702
|
+
* structure.
|
|
703
|
+
*/
|
|
704
|
+
int GIT_CALLBACK(update_refs)(
|
|
705
|
+
const char *refname,
|
|
706
|
+
const git_oid *a,
|
|
707
|
+
const git_oid *b,
|
|
708
|
+
git_refspec *spec,
|
|
709
|
+
void *data);
|
|
647
710
|
};
|
|
648
711
|
|
|
712
|
+
/** Current version for the `git_remote_callbacks_options` structure */
|
|
649
713
|
#define GIT_REMOTE_CALLBACKS_VERSION 1
|
|
714
|
+
|
|
715
|
+
/** Static constructor for `git_remote_callbacks_options` */
|
|
650
716
|
#define GIT_REMOTE_CALLBACKS_INIT {GIT_REMOTE_CALLBACKS_VERSION}
|
|
651
717
|
|
|
652
718
|
/**
|
|
@@ -697,7 +763,7 @@ typedef enum {
|
|
|
697
763
|
*/
|
|
698
764
|
GIT_REMOTE_DOWNLOAD_TAGS_NONE,
|
|
699
765
|
/**
|
|
700
|
-
* Ask for
|
|
766
|
+
* Ask for all the tags.
|
|
701
767
|
*/
|
|
702
768
|
GIT_REMOTE_DOWNLOAD_TAGS_ALL
|
|
703
769
|
} git_remote_autotag_option_t;
|
|
@@ -733,10 +799,9 @@ typedef struct {
|
|
|
733
799
|
git_fetch_prune_t prune;
|
|
734
800
|
|
|
735
801
|
/**
|
|
736
|
-
*
|
|
737
|
-
* on. Leave this default in order to behave like git.
|
|
802
|
+
* How to handle reference updates; see `git_remote_update_flags`.
|
|
738
803
|
*/
|
|
739
|
-
int update_fetchhead;
|
|
804
|
+
unsigned int update_fetchhead;
|
|
740
805
|
|
|
741
806
|
/**
|
|
742
807
|
* Determines how to behave regarding tags on the remote, such
|
|
@@ -774,9 +839,17 @@ typedef struct {
|
|
|
774
839
|
git_strarray custom_headers;
|
|
775
840
|
} git_fetch_options;
|
|
776
841
|
|
|
842
|
+
/** Current version for the `git_fetch_options` structure */
|
|
777
843
|
#define GIT_FETCH_OPTIONS_VERSION 1
|
|
778
|
-
|
|
779
|
-
|
|
844
|
+
|
|
845
|
+
/** Static constructor for `git_fetch_options` */
|
|
846
|
+
#define GIT_FETCH_OPTIONS_INIT { \
|
|
847
|
+
GIT_FETCH_OPTIONS_VERSION, \
|
|
848
|
+
GIT_REMOTE_CALLBACKS_INIT, \
|
|
849
|
+
GIT_FETCH_PRUNE_UNSPECIFIED, \
|
|
850
|
+
GIT_REMOTE_UPDATE_FETCHHEAD, \
|
|
851
|
+
GIT_REMOTE_DOWNLOAD_TAGS_UNSPECIFIED, \
|
|
852
|
+
GIT_PROXY_OPTIONS_INIT }
|
|
780
853
|
|
|
781
854
|
/**
|
|
782
855
|
* Initialize git_fetch_options structure
|
|
@@ -830,9 +903,17 @@ typedef struct {
|
|
|
830
903
|
* Extra headers for this push operation
|
|
831
904
|
*/
|
|
832
905
|
git_strarray custom_headers;
|
|
906
|
+
|
|
907
|
+
/**
|
|
908
|
+
* "Push options" to deliver to the remote.
|
|
909
|
+
*/
|
|
910
|
+
git_strarray remote_push_options;
|
|
833
911
|
} git_push_options;
|
|
834
912
|
|
|
913
|
+
/** Current version for the `git_push_options` structure */
|
|
835
914
|
#define GIT_PUSH_OPTIONS_VERSION 1
|
|
915
|
+
|
|
916
|
+
/** Static constructor for `git_push_options` */
|
|
836
917
|
#define GIT_PUSH_OPTIONS_INIT { GIT_PUSH_OPTIONS_VERSION, 1, GIT_REMOTE_CALLBACKS_INIT, GIT_PROXY_OPTIONS_INIT }
|
|
837
918
|
|
|
838
919
|
/**
|
|
@@ -876,7 +957,10 @@ typedef struct {
|
|
|
876
957
|
git_strarray custom_headers;
|
|
877
958
|
} git_remote_connect_options;
|
|
878
959
|
|
|
960
|
+
/** Current version for the `git_remote_connect_options` structure */
|
|
879
961
|
#define GIT_REMOTE_CONNECT_OPTIONS_VERSION 1
|
|
962
|
+
|
|
963
|
+
/** Static constructor for `git_remote_connect_options` */
|
|
880
964
|
#define GIT_REMOTE_CONNECT_OPTIONS_INIT { \
|
|
881
965
|
GIT_REMOTE_CONNECT_OPTIONS_VERSION, \
|
|
882
966
|
GIT_REMOTE_CALLBACKS_INIT, \
|
|
@@ -996,20 +1080,20 @@ GIT_EXTERN(int) git_remote_upload(
|
|
|
996
1080
|
* `git_remote_connect` will be used (if it was called).
|
|
997
1081
|
*
|
|
998
1082
|
* @param remote the remote to update
|
|
1083
|
+
* @param callbacks pointer to the callback structure to use or NULL
|
|
1084
|
+
* @param update_flags the git_remote_update_flags for these tips.
|
|
1085
|
+
* @param download_tags what the behaviour for downloading tags is for this fetch. This is
|
|
1086
|
+
* ignored for push. This must be the same value passed to `git_remote_download()`.
|
|
999
1087
|
* @param reflog_message The message to insert into the reflogs. If
|
|
1000
1088
|
* NULL and fetching, the default is "fetch <name>", where <name> is
|
|
1001
1089
|
* the name of the remote (or its url, for in-memory remotes). This
|
|
1002
1090
|
* parameter is ignored when pushing.
|
|
1003
|
-
* @param callbacks pointer to the callback structure to use or NULL
|
|
1004
|
-
* @param update_fetchhead whether to write to FETCH_HEAD. Pass 1 to behave like git.
|
|
1005
|
-
* @param download_tags what the behaviour for downloading tags is for this fetch. This is
|
|
1006
|
-
* ignored for push. This must be the same value passed to `git_remote_download()`.
|
|
1007
1091
|
* @return 0 or an error code
|
|
1008
1092
|
*/
|
|
1009
1093
|
GIT_EXTERN(int) git_remote_update_tips(
|
|
1010
1094
|
git_remote *remote,
|
|
1011
1095
|
const git_remote_callbacks *callbacks,
|
|
1012
|
-
int
|
|
1096
|
+
unsigned int update_flags,
|
|
1013
1097
|
git_remote_autotag_option_t download_tags,
|
|
1014
1098
|
const char *reflog_message);
|
|
1015
1099
|
|
|
@@ -1071,6 +1155,9 @@ GIT_EXTERN(int) git_remote_push(
|
|
|
1071
1155
|
|
|
1072
1156
|
/**
|
|
1073
1157
|
* Get the statistics structure that is filled in by the fetch operation.
|
|
1158
|
+
*
|
|
1159
|
+
* @param remote the remote to get statistics for
|
|
1160
|
+
* @return the git_indexer_progress for the remote
|
|
1074
1161
|
*/
|
|
1075
1162
|
GIT_EXTERN(const git_indexer_progress *) git_remote_stats(git_remote *remote);
|
|
1076
1163
|
|
|
@@ -1170,4 +1257,5 @@ GIT_EXTERN(int) git_remote_default_branch(git_buf *out, git_remote *remote);
|
|
|
1170
1257
|
|
|
1171
1258
|
/** @} */
|
|
1172
1259
|
GIT_END_DECL
|
|
1260
|
+
|
|
1173
1261
|
#endif
|