rugged 1.3.2.3 → 1.4.2

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.
Files changed (329) hide show
  1. checksums.yaml +4 -4
  2. data/ext/rugged/extconf.rb +1 -1
  3. data/ext/rugged/rugged_config.c +7 -2
  4. data/ext/rugged/rugged_remote.c +17 -0
  5. data/lib/rugged/version.rb +1 -1
  6. data/vendor/libgit2/CMakeLists.txt +103 -276
  7. data/vendor/libgit2/COPYING +36 -19
  8. data/vendor/libgit2/cmake/AddCFlagIfSupported.cmake +21 -21
  9. data/vendor/libgit2/cmake/DefaultCFlags.cmake +154 -0
  10. data/vendor/libgit2/cmake/EnableWarnings.cmake +13 -13
  11. data/vendor/libgit2/cmake/FindCoreFoundation.cmake +13 -13
  12. data/vendor/libgit2/cmake/FindGSSAPI.cmake +171 -287
  13. data/vendor/libgit2/cmake/FindGSSFramework.cmake +13 -13
  14. data/vendor/libgit2/cmake/{FindHTTP_Parser.cmake → FindHTTPParser.cmake} +17 -17
  15. data/vendor/libgit2/cmake/FindIconv.cmake +27 -27
  16. data/vendor/libgit2/cmake/FindLibSSH2.cmake +5 -5
  17. data/vendor/libgit2/cmake/FindPCRE.cmake +13 -13
  18. data/vendor/libgit2/cmake/FindPCRE2.cmake +12 -12
  19. data/vendor/libgit2/cmake/FindPkgLibraries.cmake +19 -19
  20. data/vendor/libgit2/cmake/FindSecurity.cmake +14 -14
  21. data/vendor/libgit2/cmake/FindStatNsec.cmake +12 -18
  22. data/vendor/libgit2/cmake/Findfutimens.cmake +8 -8
  23. data/vendor/libgit2/cmake/FindmbedTLS.cmake +63 -70
  24. data/vendor/libgit2/cmake/IdeSplitSources.cmake +18 -18
  25. data/vendor/libgit2/cmake/PkgBuildConfig.cmake +60 -60
  26. data/vendor/libgit2/cmake/SanitizeBool.cmake +20 -20
  27. data/vendor/libgit2/cmake/SelectGSSAPI.cmake +37 -37
  28. data/vendor/libgit2/cmake/SelectHTTPParser.cmake +19 -0
  29. data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +100 -100
  30. data/vendor/libgit2/cmake/SelectHashes.cmake +39 -49
  31. data/vendor/libgit2/cmake/SelectRegex.cmake +51 -0
  32. data/vendor/libgit2/cmake/SelectSSH.cmake +41 -0
  33. data/vendor/libgit2/cmake/SelectWinHTTP.cmake +17 -0
  34. data/vendor/libgit2/cmake/SelectZlib.cmake +34 -0
  35. data/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +6 -6
  36. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +31 -31
  37. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +1 -1
  38. data/vendor/libgit2/deps/ntlmclient/ntlm.c +4 -4
  39. data/vendor/libgit2/deps/ntlmclient/ntlm.h +4 -4
  40. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +2 -2
  41. data/vendor/libgit2/deps/pcre/CMakeLists.txt +88 -88
  42. data/vendor/libgit2/deps/winhttp/CMakeLists.txt +14 -16
  43. data/vendor/libgit2/deps/zlib/adler32.c +0 -7
  44. data/vendor/libgit2/deps/zlib/crc32.c +288 -975
  45. data/vendor/libgit2/deps/zlib/crc32.h +436 -9441
  46. data/vendor/libgit2/deps/zlib/deflate.c +31 -83
  47. data/vendor/libgit2/deps/zlib/deflate.h +15 -12
  48. data/vendor/libgit2/deps/zlib/gzguts.h +2 -3
  49. data/vendor/libgit2/deps/zlib/infback.c +1 -2
  50. data/vendor/libgit2/deps/zlib/inffast.c +14 -14
  51. data/vendor/libgit2/deps/zlib/inflate.c +8 -39
  52. data/vendor/libgit2/deps/zlib/inflate.h +2 -3
  53. data/vendor/libgit2/deps/zlib/inftrees.c +3 -3
  54. data/vendor/libgit2/deps/zlib/trees.c +48 -27
  55. data/vendor/libgit2/deps/zlib/zlib.h +100 -126
  56. data/vendor/libgit2/deps/zlib/zutil.c +2 -2
  57. data/vendor/libgit2/deps/zlib/zutil.h +9 -12
  58. data/vendor/libgit2/include/git2/apply.h +16 -2
  59. data/vendor/libgit2/include/git2/attr.h +11 -2
  60. data/vendor/libgit2/include/git2/blame.h +4 -1
  61. data/vendor/libgit2/include/git2/blob.h +14 -1
  62. data/vendor/libgit2/include/git2/branch.h +2 -0
  63. data/vendor/libgit2/include/git2/buffer.h +18 -78
  64. data/vendor/libgit2/include/git2/cert.h +2 -2
  65. data/vendor/libgit2/include/git2/checkout.h +5 -2
  66. data/vendor/libgit2/include/git2/clone.h +3 -3
  67. data/vendor/libgit2/include/git2/commit.h +2 -0
  68. data/vendor/libgit2/include/git2/common.h +5 -12
  69. data/vendor/libgit2/include/git2/config.h +19 -3
  70. data/vendor/libgit2/include/git2/credential.h +2 -1
  71. data/vendor/libgit2/include/git2/credential_helpers.h +1 -0
  72. data/vendor/libgit2/include/git2/deprecated.h +1 -1
  73. data/vendor/libgit2/include/git2/describe.h +7 -2
  74. data/vendor/libgit2/include/git2/diff.h +17 -9
  75. data/vendor/libgit2/include/git2/email.h +1 -1
  76. data/vendor/libgit2/include/git2/errors.h +1 -2
  77. data/vendor/libgit2/include/git2/filter.h +7 -2
  78. data/vendor/libgit2/include/git2/graph.h +1 -0
  79. data/vendor/libgit2/include/git2/ignore.h +1 -1
  80. data/vendor/libgit2/include/git2/index.h +11 -5
  81. data/vendor/libgit2/include/git2/indexer.h +19 -0
  82. data/vendor/libgit2/include/git2/merge.h +23 -3
  83. data/vendor/libgit2/include/git2/message.h +2 -0
  84. data/vendor/libgit2/include/git2/object.h +23 -0
  85. data/vendor/libgit2/include/git2/odb.h +37 -7
  86. data/vendor/libgit2/include/git2/odb_backend.h +1 -1
  87. data/vendor/libgit2/include/git2/pack.h +24 -8
  88. data/vendor/libgit2/include/git2/patch.h +8 -0
  89. data/vendor/libgit2/include/git2/pathspec.h +1 -1
  90. data/vendor/libgit2/include/git2/proxy.h +1 -1
  91. data/vendor/libgit2/include/git2/rebase.h +9 -1
  92. data/vendor/libgit2/include/git2/refdb.h +3 -0
  93. data/vendor/libgit2/include/git2/reflog.h +1 -1
  94. data/vendor/libgit2/include/git2/refs.h +2 -2
  95. data/vendor/libgit2/include/git2/remote.h +184 -37
  96. data/vendor/libgit2/include/git2/repository.h +14 -9
  97. data/vendor/libgit2/include/git2/reset.h +2 -2
  98. data/vendor/libgit2/include/git2/revparse.h +1 -1
  99. data/vendor/libgit2/include/git2/revwalk.h +4 -1
  100. data/vendor/libgit2/include/git2/signature.h +1 -1
  101. data/vendor/libgit2/include/git2/stash.h +3 -3
  102. data/vendor/libgit2/include/git2/status.h +9 -3
  103. data/vendor/libgit2/include/git2/submodule.h +7 -2
  104. data/vendor/libgit2/include/git2/sys/commit_graph.h +1 -1
  105. data/vendor/libgit2/include/git2/sys/odb_backend.h +2 -5
  106. data/vendor/libgit2/include/git2/sys/remote.h +31 -0
  107. data/vendor/libgit2/include/git2/sys/stream.h +1 -1
  108. data/vendor/libgit2/include/git2/sys/transport.h +25 -34
  109. data/vendor/libgit2/include/git2/tag.h +1 -0
  110. data/vendor/libgit2/include/git2/tree.h +4 -3
  111. data/vendor/libgit2/include/git2/types.h +7 -7
  112. data/vendor/libgit2/include/git2/version.h +3 -3
  113. data/vendor/libgit2/include/git2/worktree.h +12 -2
  114. data/vendor/libgit2/src/CMakeLists.txt +189 -315
  115. data/vendor/libgit2/src/annotated_commit.h +1 -1
  116. data/vendor/libgit2/src/apply.c +18 -18
  117. data/vendor/libgit2/src/apply.h +2 -2
  118. data/vendor/libgit2/src/attr.c +18 -18
  119. data/vendor/libgit2/src/attr_file.c +17 -17
  120. data/vendor/libgit2/src/attr_file.h +4 -4
  121. data/vendor/libgit2/src/attrcache.c +17 -12
  122. data/vendor/libgit2/src/blame_git.c +1 -1
  123. data/vendor/libgit2/src/blob.c +33 -26
  124. data/vendor/libgit2/src/blob.h +1 -1
  125. data/vendor/libgit2/src/branch.c +150 -109
  126. data/vendor/libgit2/src/branch.h +15 -3
  127. data/vendor/libgit2/src/buf.c +126 -0
  128. data/vendor/libgit2/src/buf.h +50 -0
  129. data/vendor/libgit2/src/cc-compat.h +1 -1
  130. data/vendor/libgit2/src/checkout.c +74 -68
  131. data/vendor/libgit2/src/cherrypick.c +10 -10
  132. data/vendor/libgit2/src/clone.c +66 -66
  133. data/vendor/libgit2/src/commit.c +128 -58
  134. data/vendor/libgit2/src/commit.h +24 -1
  135. data/vendor/libgit2/src/commit_graph.c +68 -53
  136. data/vendor/libgit2/src/commit_graph.h +10 -3
  137. data/vendor/libgit2/src/commit_list.c +2 -3
  138. data/vendor/libgit2/src/common.h +10 -3
  139. data/vendor/libgit2/src/config.c +99 -77
  140. data/vendor/libgit2/src/config.h +15 -2
  141. data/vendor/libgit2/src/config_file.c +103 -91
  142. data/vendor/libgit2/src/config_mem.c +9 -9
  143. data/vendor/libgit2/src/config_parse.c +27 -23
  144. data/vendor/libgit2/src/crlf.c +24 -21
  145. data/vendor/libgit2/src/date.c +10 -17
  146. data/vendor/libgit2/src/date.h +33 -0
  147. data/vendor/libgit2/src/describe.c +27 -19
  148. data/vendor/libgit2/src/diff.c +25 -8
  149. data/vendor/libgit2/src/diff.h +2 -4
  150. data/vendor/libgit2/src/diff_driver.c +34 -36
  151. data/vendor/libgit2/src/diff_driver.h +3 -3
  152. data/vendor/libgit2/src/diff_file.c +29 -20
  153. data/vendor/libgit2/src/diff_generate.c +30 -6
  154. data/vendor/libgit2/src/diff_generate.h +5 -3
  155. data/vendor/libgit2/src/diff_print.c +102 -95
  156. data/vendor/libgit2/src/diff_stats.c +40 -29
  157. data/vendor/libgit2/src/{message.h → diff_stats.h} +7 -6
  158. data/vendor/libgit2/src/diff_tform.c +9 -8
  159. data/vendor/libgit2/src/diff_xdiff.c +3 -8
  160. data/vendor/libgit2/src/email.c +54 -38
  161. data/vendor/libgit2/src/email.h +1 -1
  162. data/vendor/libgit2/src/errors.c +18 -18
  163. data/vendor/libgit2/src/features.h.in +6 -1
  164. data/vendor/libgit2/src/fetch.c +69 -24
  165. data/vendor/libgit2/src/fetch.h +1 -1
  166. data/vendor/libgit2/src/fetchhead.c +19 -19
  167. data/vendor/libgit2/src/filebuf.c +28 -28
  168. data/vendor/libgit2/src/filebuf.h +1 -1
  169. data/vendor/libgit2/src/filter.c +96 -52
  170. data/vendor/libgit2/src/filter.h +26 -5
  171. data/vendor/libgit2/src/fs_path.c +1912 -0
  172. data/vendor/libgit2/src/fs_path.h +752 -0
  173. data/vendor/libgit2/src/futils.c +91 -85
  174. data/vendor/libgit2/src/futils.h +26 -14
  175. data/vendor/libgit2/src/hash/sha1/collisiondetect.c +2 -2
  176. data/vendor/libgit2/src/hash/sha1/common_crypto.c +2 -2
  177. data/vendor/libgit2/src/hash/sha1/generic.c +2 -2
  178. data/vendor/libgit2/src/hash/sha1/mbedtls.c +2 -2
  179. data/vendor/libgit2/src/hash/sha1/openssl.c +2 -2
  180. data/vendor/libgit2/src/hash/sha1/sha1dc/sha1.c +1 -1
  181. data/vendor/libgit2/src/hash/sha1/win32.c +6 -6
  182. data/vendor/libgit2/src/hash/sha1.h +3 -1
  183. data/vendor/libgit2/src/hash.c +67 -35
  184. data/vendor/libgit2/src/hash.h +12 -12
  185. data/vendor/libgit2/src/ident.c +18 -18
  186. data/vendor/libgit2/src/ignore.c +35 -34
  187. data/vendor/libgit2/src/ignore.h +2 -2
  188. data/vendor/libgit2/src/index.c +79 -80
  189. data/vendor/libgit2/src/index.h +6 -3
  190. data/vendor/libgit2/src/indexer.c +75 -57
  191. data/vendor/libgit2/src/iterator.c +64 -56
  192. data/vendor/libgit2/src/iterator.h +5 -5
  193. data/vendor/libgit2/src/khash.h +1 -1
  194. data/vendor/libgit2/src/libgit2.c +22 -19
  195. data/vendor/libgit2/src/mailmap.c +38 -36
  196. data/vendor/libgit2/src/merge.c +27 -27
  197. data/vendor/libgit2/src/merge.h +1 -14
  198. data/vendor/libgit2/src/merge_driver.c +2 -2
  199. data/vendor/libgit2/src/merge_file.c +13 -3
  200. data/vendor/libgit2/src/message.c +21 -10
  201. data/vendor/libgit2/src/midx.c +83 -66
  202. data/vendor/libgit2/src/midx.h +3 -3
  203. data/vendor/libgit2/src/mwindow.c +1 -1
  204. data/vendor/libgit2/src/net.c +278 -68
  205. data/vendor/libgit2/src/net.h +10 -3
  206. data/vendor/libgit2/src/netops.c +1 -1
  207. data/vendor/libgit2/src/netops.h +1 -1
  208. data/vendor/libgit2/src/notes.c +20 -29
  209. data/vendor/libgit2/src/object.c +49 -9
  210. data/vendor/libgit2/src/object.h +1 -1
  211. data/vendor/libgit2/src/odb.c +35 -32
  212. data/vendor/libgit2/src/odb.h +1 -1
  213. data/vendor/libgit2/src/odb_loose.c +68 -68
  214. data/vendor/libgit2/src/odb_mempack.c +18 -5
  215. data/vendor/libgit2/src/odb_pack.c +43 -43
  216. data/vendor/libgit2/src/oid.c +11 -4
  217. data/vendor/libgit2/src/oid.h +15 -0
  218. data/vendor/libgit2/src/pack-objects.c +41 -26
  219. data/vendor/libgit2/src/pack-objects.h +11 -6
  220. data/vendor/libgit2/src/pack.c +10 -10
  221. data/vendor/libgit2/src/patch.c +3 -3
  222. data/vendor/libgit2/src/patch.h +1 -0
  223. data/vendor/libgit2/src/patch_generate.c +27 -11
  224. data/vendor/libgit2/src/patch_generate.h +5 -5
  225. data/vendor/libgit2/src/patch_parse.c +24 -24
  226. data/vendor/libgit2/src/path.c +76 -1951
  227. data/vendor/libgit2/src/path.h +34 -741
  228. data/vendor/libgit2/src/pathspec.c +6 -6
  229. data/vendor/libgit2/src/pathspec.h +2 -2
  230. data/vendor/libgit2/src/posix.c +3 -3
  231. data/vendor/libgit2/src/posix.h +1 -0
  232. data/vendor/libgit2/src/pqueue.h +1 -1
  233. data/vendor/libgit2/src/proxy.c +4 -1
  234. data/vendor/libgit2/src/proxy.h +1 -1
  235. data/vendor/libgit2/src/push.c +30 -35
  236. data/vendor/libgit2/src/push.h +4 -16
  237. data/vendor/libgit2/src/rand.c +226 -0
  238. data/vendor/libgit2/src/rand.h +37 -0
  239. data/vendor/libgit2/src/reader.c +8 -8
  240. data/vendor/libgit2/src/reader.h +2 -2
  241. data/vendor/libgit2/src/rebase.c +89 -88
  242. data/vendor/libgit2/src/refdb_fs.c +447 -173
  243. data/vendor/libgit2/src/refs.c +32 -32
  244. data/vendor/libgit2/src/refs.h +2 -2
  245. data/vendor/libgit2/src/refspec.c +32 -37
  246. data/vendor/libgit2/src/refspec.h +5 -2
  247. data/vendor/libgit2/src/regexp.c +1 -1
  248. data/vendor/libgit2/src/remote.c +713 -419
  249. data/vendor/libgit2/src/remote.h +15 -10
  250. data/vendor/libgit2/src/repository.c +350 -467
  251. data/vendor/libgit2/src/repository.h +11 -10
  252. data/vendor/libgit2/src/reset.c +8 -5
  253. data/vendor/libgit2/src/revert.c +10 -10
  254. data/vendor/libgit2/src/revparse.c +48 -35
  255. data/vendor/libgit2/src/revwalk.c +7 -7
  256. data/vendor/libgit2/src/signature.c +12 -6
  257. data/vendor/libgit2/src/signature.h +1 -1
  258. data/vendor/libgit2/src/sortedcache.c +1 -1
  259. data/vendor/libgit2/src/sortedcache.h +1 -1
  260. data/vendor/libgit2/src/stash.c +36 -37
  261. data/vendor/libgit2/src/status.c +4 -1
  262. data/vendor/libgit2/src/{buffer.c → str.c} +157 -151
  263. data/vendor/libgit2/src/str.h +357 -0
  264. data/vendor/libgit2/src/streams/mbedtls.c +8 -6
  265. data/vendor/libgit2/src/streams/openssl_dynamic.h +3 -3
  266. data/vendor/libgit2/src/submodule.c +171 -159
  267. data/vendor/libgit2/src/submodule.h +1 -1
  268. data/vendor/libgit2/src/sysdir.c +68 -52
  269. data/vendor/libgit2/src/sysdir.h +15 -10
  270. data/vendor/libgit2/src/tag.c +29 -27
  271. data/vendor/libgit2/src/thread.h +3 -3
  272. data/vendor/libgit2/src/threadstate.c +3 -3
  273. data/vendor/libgit2/src/threadstate.h +1 -1
  274. data/vendor/libgit2/src/trace.c +1 -14
  275. data/vendor/libgit2/src/trace.h +5 -22
  276. data/vendor/libgit2/src/trailer.c +1 -1
  277. data/vendor/libgit2/src/transaction.c +1 -1
  278. data/vendor/libgit2/src/transport.c +10 -10
  279. data/vendor/libgit2/src/transports/auth.c +7 -9
  280. data/vendor/libgit2/src/transports/auth.h +2 -3
  281. data/vendor/libgit2/src/transports/auth_negotiate.c +12 -13
  282. data/vendor/libgit2/src/transports/auth_ntlm.c +10 -10
  283. data/vendor/libgit2/src/transports/auth_ntlm.h +0 -1
  284. data/vendor/libgit2/src/transports/git.c +9 -11
  285. data/vendor/libgit2/src/transports/http.c +37 -17
  286. data/vendor/libgit2/src/transports/http.h +2 -3
  287. data/vendor/libgit2/src/transports/httpclient.c +65 -65
  288. data/vendor/libgit2/src/transports/local.c +124 -116
  289. data/vendor/libgit2/src/transports/smart.c +51 -139
  290. data/vendor/libgit2/src/transports/smart.h +25 -31
  291. data/vendor/libgit2/src/transports/smart_pkt.c +33 -33
  292. data/vendor/libgit2/src/transports/smart_protocol.c +57 -39
  293. data/vendor/libgit2/src/transports/ssh.c +47 -112
  294. data/vendor/libgit2/src/transports/winhttp.c +50 -56
  295. data/vendor/libgit2/src/tree-cache.c +5 -5
  296. data/vendor/libgit2/src/tree-cache.h +2 -2
  297. data/vendor/libgit2/src/tree.c +59 -48
  298. data/vendor/libgit2/src/tree.h +1 -1
  299. data/vendor/libgit2/src/unix/map.c +0 -2
  300. data/vendor/libgit2/src/unix/posix.h +1 -4
  301. data/vendor/libgit2/src/unix/realpath.c +0 -2
  302. data/vendor/libgit2/src/util.c +14 -14
  303. data/vendor/libgit2/src/util.h +2 -28
  304. data/vendor/libgit2/src/vector.h +1 -1
  305. data/vendor/libgit2/src/win32/findfile.c +172 -116
  306. data/vendor/libgit2/src/win32/findfile.h +7 -4
  307. data/vendor/libgit2/src/win32/path_w32.c +140 -9
  308. data/vendor/libgit2/src/win32/path_w32.h +2 -0
  309. data/vendor/libgit2/src/win32/posix.h +0 -1
  310. data/vendor/libgit2/src/win32/posix_w32.c +11 -27
  311. data/vendor/libgit2/src/win32/w32_buffer.c +2 -3
  312. data/vendor/libgit2/src/win32/w32_buffer.h +2 -3
  313. data/vendor/libgit2/src/win32/w32_leakcheck.c +1 -1
  314. data/vendor/libgit2/src/worktree.c +116 -94
  315. data/vendor/libgit2/src/worktree.h +1 -1
  316. data/vendor/libgit2/src/xdiff/git-xdiff.h +53 -0
  317. data/vendor/libgit2/src/xdiff/xdiff.h +15 -15
  318. data/vendor/libgit2/src/xdiff/xdiffi.c +134 -108
  319. data/vendor/libgit2/src/xdiff/xemit.c +23 -7
  320. data/vendor/libgit2/src/xdiff/xhistogram.c +87 -78
  321. data/vendor/libgit2/src/xdiff/xinclude.h +1 -12
  322. data/vendor/libgit2/src/xdiff/xmerge.c +104 -117
  323. data/vendor/libgit2/src/xdiff/xpatience.c +6 -17
  324. data/vendor/libgit2/src/xdiff/xprepare.c +15 -20
  325. data/vendor/libgit2/src/xdiff/xutils.c +18 -7
  326. data/vendor/libgit2/src/zstream.c +5 -5
  327. data/vendor/libgit2/src/zstream.h +4 -4
  328. metadata +25 -10
  329. data/vendor/libgit2/src/buffer.h +0 -374
@@ -83,7 +83,7 @@ typedef enum {
83
83
  GIT_ATTR_VALUE_UNSPECIFIED = 0, /**< The attribute has been left unspecified */
84
84
  GIT_ATTR_VALUE_TRUE, /**< The attribute has been set */
85
85
  GIT_ATTR_VALUE_FALSE, /**< The attribute has been unset */
86
- GIT_ATTR_VALUE_STRING, /**< This attribute has a value */
86
+ GIT_ATTR_VALUE_STRING /**< This attribute has a value */
87
87
  } git_attr_value_t;
88
88
 
89
89
  /**
@@ -177,6 +177,7 @@ typedef struct {
177
177
  * not have to exist, but if it does not, then it will be
178
178
  * treated as a plain file (not a directory).
179
179
  * @param name The name of the attribute to look up.
180
+ * @return 0 or an error code.
180
181
  */
181
182
  GIT_EXTERN(int) git_attr_get(
182
183
  const char **value_out,
@@ -199,6 +200,7 @@ GIT_EXTERN(int) git_attr_get(
199
200
  * not have to exist, but if it does not, then it will be
200
201
  * treated as a plain file (not a directory).
201
202
  * @param name The name of the attribute to look up.
203
+ * @return 0 or an error code.
202
204
  */
203
205
  GIT_EXTERN(int) git_attr_get_ext(
204
206
  const char **value_out,
@@ -235,6 +237,7 @@ GIT_EXTERN(int) git_attr_get_ext(
235
237
  * it will be treated as a plain file (i.e. not a directory).
236
238
  * @param num_attr The number of attributes being looked up
237
239
  * @param names An array of num_attr strings containing attribute names.
240
+ * @return 0 or an error code.
238
241
  */
239
242
  GIT_EXTERN(int) git_attr_get_many(
240
243
  const char **values_out,
@@ -259,6 +262,7 @@ GIT_EXTERN(int) git_attr_get_many(
259
262
  * it will be treated as a plain file (i.e. not a directory).
260
263
  * @param num_attr The number of attributes being looked up
261
264
  * @param names An array of num_attr strings containing attribute names.
265
+ * @return 0 or an error code.
262
266
  */
263
267
  GIT_EXTERN(int) git_attr_get_many_ext(
264
268
  const char **values_out,
@@ -344,11 +348,16 @@ GIT_EXTERN(int) git_attr_cache_flush(
344
348
  * Add a macro definition.
345
349
  *
346
350
  * Macros will automatically be loaded from the top level `.gitattributes`
347
- * file of the repository (plus the build-in "binary" macro). This
351
+ * file of the repository (plus the built-in "binary" macro). This
348
352
  * function allows you to add others. For example, to add the default
349
353
  * macro, you would call:
350
354
  *
351
355
  * git_attr_add_macro(repo, "binary", "-diff -crlf");
356
+ *
357
+ * @param repo The repository to add the macro in.
358
+ * @param name The name of the macro.
359
+ * @param values The value for the macro.
360
+ * @return 0 or an error code.
352
361
  */
353
362
  GIT_EXTERN(int) git_attr_add_macro(
354
363
  git_repository *repo,
@@ -73,7 +73,7 @@ typedef enum {
73
73
  GIT_BLAME_USE_MAILMAP = (1<<5),
74
74
 
75
75
  /** Ignore whitespace differences */
76
- GIT_BLAME_IGNORE_WHITESPACE = (1<<6),
76
+ GIT_BLAME_IGNORE_WHITESPACE = (1<<6)
77
77
  } git_blame_flag_t;
78
78
 
79
79
  /**
@@ -203,6 +203,9 @@ typedef struct git_blame git_blame;
203
203
 
204
204
  /**
205
205
  * Gets the number of hunks that exist in the blame structure.
206
+ *
207
+ * @param blame The blame structure to query.
208
+ * @return The number of hunks.
206
209
  */
207
210
  GIT_EXTERN(uint32_t) git_blame_get_hunk_count(git_blame *blame);
208
211
 
@@ -119,7 +119,7 @@ typedef enum {
119
119
  * When set, filters will be loaded from a `.gitattributes` file
120
120
  * in the specified commit.
121
121
  */
122
- GIT_BLOB_FILTER_ATTRIBUTES_FROM_COMMIT = (1 << 3),
122
+ GIT_BLOB_FILTER_ATTRIBUTES_FROM_COMMIT = (1 << 3)
123
123
  } git_blob_filter_flag_t;
124
124
 
125
125
  /**
@@ -284,12 +284,25 @@ GIT_EXTERN(int) git_blob_create_from_buffer(
284
284
  */
285
285
  GIT_EXTERN(int) git_blob_is_binary(const git_blob *blob);
286
286
 
287
+ /**
288
+ * Determine if the given content is most certainly binary or not;
289
+ * this is the same mechanism used by `git_blob_is_binary` but only
290
+ * looking at raw data.
291
+ *
292
+ * @param data The blob data which content should be analyzed
293
+ * @param len The length of the data
294
+ * @return 1 if the content of the blob is detected
295
+ * as binary; 0 otherwise.
296
+ */
297
+ GIT_EXTERN(int) git_blob_data_is_binary(const char *data, size_t len);
298
+
287
299
  /**
288
300
  * Create an in-memory copy of a blob. The copy must be explicitly
289
301
  * free'd or it will leak.
290
302
  *
291
303
  * @param out Pointer to store the copy of the object
292
304
  * @param source Original object to copy
305
+ * @return 0.
293
306
  */
294
307
  GIT_EXTERN(int) git_blob_dup(git_blob **out, git_blob *source);
295
308
 
@@ -34,6 +34,8 @@ GIT_BEGIN_DECL
34
34
  *
35
35
  * @param out Pointer where to store the underlying reference.
36
36
  *
37
+ * @param repo the repository to create the branch in.
38
+ *
37
39
  * @param branch_name Name for the branch; this name is
38
40
  * validated for consistency. It should also not conflict with
39
41
  * an already existing branch name.
@@ -23,110 +23,50 @@ GIT_BEGIN_DECL
23
23
  *
24
24
  * Sometimes libgit2 wants to return an allocated data buffer to the
25
25
  * caller and have the caller take responsibility for freeing that memory.
26
- * This can be awkward if the caller does not have easy access to the same
27
- * allocation functions that libgit2 is using. In those cases, libgit2
28
- * will fill in a `git_buf` and the caller can use `git_buf_dispose()` to
29
- * release it when they are done.
26
+ * To make ownership clear in these cases, libgit2 uses `git_buf` to
27
+ * return this data. Callers should use `git_buf_dispose()` to release
28
+ * the memory when they are done.
30
29
  *
31
- * A `git_buf` may also be used for the caller to pass in a reference to
32
- * a block of memory they hold. In this case, libgit2 will not resize or
33
- * free the memory, but will read from it as needed.
34
- *
35
- * Some APIs may occasionally do something slightly unusual with a buffer,
36
- * such as setting `ptr` to a value that was passed in by the user. In
37
- * those cases, the behavior will be clearly documented by the API.
30
+ * A `git_buf` contains a pointer to a NUL-terminated C string, and
31
+ * the length of the string (not including the NUL terminator).
38
32
  */
39
33
  typedef struct {
40
34
  /**
41
- * The buffer contents.
42
- *
43
- * `ptr` points to the start of the allocated memory. If it is NULL,
44
- * then the `git_buf` is considered empty and libgit2 will feel free
45
- * to overwrite it with new data.
35
+ * The buffer contents. `ptr` points to the start of the buffer
36
+ * being returned. The buffer's length (in bytes) is specified
37
+ * by the `size` member of the structure, and contains a NUL
38
+ * terminator at position `(size + 1)`.
46
39
  */
47
- char *ptr;
40
+ char *ptr;
48
41
 
49
42
  /**
50
- * `asize` holds the known total amount of allocated memory if the `ptr`
51
- * was allocated by libgit2. It may be larger than `size`. If `ptr`
52
- * was not allocated by libgit2 and should not be resized and/or freed,
53
- * then `asize` will be set to zero.
43
+ * This field is reserved and unused.
54
44
  */
55
- size_t asize;
45
+ size_t reserved;
56
46
 
57
47
  /**
58
- * `size` holds the size (in bytes) of the data that is actually used.
48
+ * The length (in bytes) of the buffer pointed to by `ptr`,
49
+ * not including a NUL terminator.
59
50
  */
60
51
  size_t size;
61
52
  } git_buf;
62
53
 
63
54
  /**
64
- * Static initializer for git_buf from static buffer
55
+ * Use to initialize a `git_buf` before passing it to a function that
56
+ * will populate it.
65
57
  */
66
- #define GIT_BUF_INIT_CONST(STR,LEN) { (char *)(STR), 0, (size_t)(LEN) }
58
+ #define GIT_BUF_INIT { NULL, 0, 0 }
67
59
 
68
60
  /**
69
61
  * Free the memory referred to by the git_buf.
70
62
  *
71
63
  * Note that this does not free the `git_buf` itself, just the memory
72
- * pointed to by `buffer->ptr`. This will not free the memory if it looks
73
- * like it was not allocated internally, but it will clear the buffer back
74
- * to the empty state.
64
+ * pointed to by `buffer->ptr`.
75
65
  *
76
66
  * @param buffer The buffer to deallocate
77
67
  */
78
68
  GIT_EXTERN(void) git_buf_dispose(git_buf *buffer);
79
69
 
80
- /**
81
- * Resize the buffer allocation to make more space.
82
- *
83
- * This will attempt to grow the buffer to accommodate the target size.
84
- *
85
- * If the buffer refers to memory that was not allocated by libgit2 (i.e.
86
- * the `asize` field is zero), then `ptr` will be replaced with a newly
87
- * allocated block of data. Be careful so that memory allocated by the
88
- * caller is not lost. As a special variant, if you pass `target_size` as
89
- * 0 and the memory is not allocated by libgit2, this will allocate a new
90
- * buffer of size `size` and copy the external data into it.
91
- *
92
- * Currently, this will never shrink a buffer, only expand it.
93
- *
94
- * If the allocation fails, this will return an error and the buffer will be
95
- * marked as invalid for future operations, invaliding the contents.
96
- *
97
- * @param buffer The buffer to be resized; may or may not be allocated yet
98
- * @param target_size The desired available size
99
- * @return 0 on success, -1 on allocation failure
100
- */
101
- GIT_EXTERN(int) git_buf_grow(git_buf *buffer, size_t target_size);
102
-
103
- /**
104
- * Set buffer to a copy of some raw data.
105
- *
106
- * @param buffer The buffer to set
107
- * @param data The data to copy into the buffer
108
- * @param datalen The length of the data to copy into the buffer
109
- * @return 0 on success, -1 on allocation failure
110
- */
111
- GIT_EXTERN(int) git_buf_set(
112
- git_buf *buffer, const void *data, size_t datalen);
113
-
114
- /**
115
- * Check quickly if buffer looks like it contains binary data
116
- *
117
- * @param buf Buffer to check
118
- * @return 1 if buffer looks like non-text data
119
- */
120
- GIT_EXTERN(int) git_buf_is_binary(const git_buf *buf);
121
-
122
- /**
123
- * Check quickly if buffer contains a NUL byte
124
- *
125
- * @param buf Buffer to check
126
- * @return 1 if buffer contains a NUL byte
127
- */
128
- GIT_EXTERN(int) git_buf_contains_nul(const git_buf *buf);
129
-
130
70
  GIT_END_DECL
131
71
 
132
72
  /** @} */
@@ -44,7 +44,7 @@ typedef enum git_cert_t {
44
44
  * information about the certificate. This is used when using
45
45
  * curl.
46
46
  */
47
- GIT_CERT_STRARRAY,
47
+ GIT_CERT_STRARRAY
48
48
  } git_cert_t;
49
49
 
50
50
  /**
@@ -82,7 +82,7 @@ typedef enum {
82
82
  /** SHA-256 is available */
83
83
  GIT_CERT_SSH_SHA256 = (1 << 2),
84
84
  /** Raw hostkey is available */
85
- GIT_CERT_SSH_RAW = (1 << 3),
85
+ GIT_CERT_SSH_RAW = (1 << 3)
86
86
  } git_cert_ssh_t;
87
87
 
88
88
  typedef enum {
@@ -182,7 +182,10 @@ typedef enum {
182
182
  * notifications; don't update the working directory or index.
183
183
  */
184
184
  GIT_CHECKOUT_DRY_RUN = (1u << 24),
185
-
185
+
186
+ /** Include common ancestor data in zdiff3 format for conflicts */
187
+ GIT_CHECKOUT_CONFLICT_STYLE_ZDIFF3 = (1u << 25),
188
+
186
189
  /**
187
190
  * THE FOLLOWING OPTIONS ARE NOT YET IMPLEMENTED
188
191
  */
@@ -190,7 +193,7 @@ typedef enum {
190
193
  /** Recursively checkout submodules with same options (NOT IMPLEMENTED) */
191
194
  GIT_CHECKOUT_UPDATE_SUBMODULES = (1u << 16),
192
195
  /** Recursively checkout submodules if HEAD moved in super repo (NOT IMPLEMENTED) */
193
- GIT_CHECKOUT_UPDATE_SUBMODULES_IF_CHANGED = (1u << 17),
196
+ GIT_CHECKOUT_UPDATE_SUBMODULES_IF_CHANGED = (1u << 17)
194
197
 
195
198
  } git_checkout_strategy_t;
196
199
 
@@ -49,7 +49,7 @@ typedef enum {
49
49
  * Bypass the git-aware transport, but do not try to use
50
50
  * hardlinks.
51
51
  */
52
- GIT_CLONE_LOCAL_NO_LINKS,
52
+ GIT_CLONE_LOCAL_NO_LINKS
53
53
  } git_clone_local_t;
54
54
 
55
55
  /**
@@ -74,8 +74,8 @@ typedef int GIT_CALLBACK(git_remote_create_cb)(
74
74
  void *payload);
75
75
 
76
76
  /**
77
- * The signature of a function matchin git_repository_init, with an
78
- * aditional void * as callback payload.
77
+ * The signature of a function matching git_repository_init, with an
78
+ * additional void * as callback payload.
79
79
  *
80
80
  * Callers of git_clone my provide a function matching this signature
81
81
  * to override the repository creation and customization process
@@ -479,6 +479,7 @@ GIT_EXTERN(int) git_commit_create_buffer(
479
479
  * to the commit and write it into the given repository.
480
480
  *
481
481
  * @param out the resulting commit id
482
+ * @param repo the repository to create the commit in.
482
483
  * @param commit_content the content of the unsigned commit object
483
484
  * @param signature the signature to add to the commit. Leave `NULL`
484
485
  * to create a commit without adding a signature field.
@@ -499,6 +500,7 @@ GIT_EXTERN(int) git_commit_create_with_signature(
499
500
  *
500
501
  * @param out Pointer to store the copy of the commit
501
502
  * @param source Original commit to copy
503
+ * @return 0
502
504
  */
503
505
  GIT_EXTERN(int) git_commit_dup(git_commit **out, git_commit *source);
504
506
 
@@ -147,7 +147,7 @@ typedef enum {
147
147
  * If set, libgit2 was built with support for sub-second resolution in file
148
148
  * modification times.
149
149
  */
150
- GIT_FEATURE_NSEC = (1 << 3),
150
+ GIT_FEATURE_NSEC = (1 << 3)
151
151
  } git_feature_t;
152
152
 
153
153
  /**
@@ -167,6 +167,9 @@ typedef enum {
167
167
  * - GIT_FEATURE_SSH
168
168
  * Libgit2 supports the SSH protocol for network operations. This requires
169
169
  * the libssh2 library to be found when compiling libgit2
170
+ *
171
+ * - GIT_FEATURE_NSEC
172
+ * Libgit2 supports the sub-second resolution in file modification times.
170
173
  */
171
174
  GIT_EXTERN(int) git_libgit2_features(void);
172
175
 
@@ -211,9 +214,7 @@ typedef enum {
211
214
  GIT_OPT_SET_ODB_PACKED_PRIORITY,
212
215
  GIT_OPT_SET_ODB_LOOSE_PRIORITY,
213
216
  GIT_OPT_GET_EXTENSIONS,
214
- GIT_OPT_SET_EXTENSIONS,
215
- GIT_OPT_GET_OWNER_VALIDATION,
216
- GIT_OPT_SET_OWNER_VALIDATION
217
+ GIT_OPT_SET_EXTENSIONS
217
218
  } git_libgit2_opt_t;
218
219
 
219
220
  /**
@@ -451,14 +452,6 @@ typedef enum {
451
452
  * > to support repositories with the `noop` extension but does want
452
453
  * > to support repositories with the `newext` extension.
453
454
  *
454
- * opts(GIT_OPT_GET_OWNER_VALIDATION, int *enabled)
455
- * > Gets the owner validation setting for repository
456
- * > directories.
457
- *
458
- * opts(GIT_OPT_SET_OWNER_VALIDATION, int enabled)
459
- * > Set that repository directories should be owned by the current
460
- * > user. The default is to validate ownership.
461
- *
462
455
  * @param option Option key
463
456
  * @param ... value to set the option
464
457
  * @return 0 on success, <0 on failure
@@ -55,7 +55,7 @@ typedef enum {
55
55
  /** Represents the highest level available config file (i.e. the most
56
56
  * specific config file available that actually is loaded)
57
57
  */
58
- GIT_CONFIG_HIGHEST_LEVEL = -1,
58
+ GIT_CONFIG_HIGHEST_LEVEL = -1
59
59
  } git_config_level_t;
60
60
 
61
61
  /**
@@ -72,14 +72,17 @@ typedef struct git_config_entry {
72
72
 
73
73
  /**
74
74
  * Free a config entry
75
+ *
76
+ * @param entry The entry to free.
75
77
  */
76
- GIT_EXTERN(void) git_config_entry_free(git_config_entry *);
78
+ GIT_EXTERN(void) git_config_entry_free(git_config_entry *entry);
77
79
 
78
80
  /**
79
81
  * A config enumeration callback
80
82
  *
81
83
  * @param entry the entry currently being enumerated
82
84
  * @param payload a user-specified pointer
85
+ * @return non-zero to terminate the iteration.
83
86
  */
84
87
  typedef int GIT_CALLBACK(git_config_foreach_cb)(const git_config_entry *entry, void *payload);
85
88
 
@@ -269,6 +272,7 @@ GIT_EXTERN(int) git_config_open_level(
269
272
  *
270
273
  * @param out pointer in which to store the config object
271
274
  * @param config the config object in which to look
275
+ * @return 0 or an error code.
272
276
  */
273
277
  GIT_EXTERN(int) git_config_open_global(git_config **out, git_config *config);
274
278
 
@@ -422,6 +426,7 @@ GIT_EXTERN(int) git_config_get_string_buf(git_buf *out, const git_config *cfg, c
422
426
  * interested in. Use NULL to indicate all
423
427
  * @param callback the function to be called on each value of the variable
424
428
  * @param payload opaque pointer to pass to the callback
429
+ * @return 0 or an error code.
425
430
  */
426
431
  GIT_EXTERN(int) git_config_get_multivar_foreach(const git_config *cfg, const char *name, const char *regexp, git_config_foreach_cb callback, void *payload);
427
432
 
@@ -437,6 +442,7 @@ GIT_EXTERN(int) git_config_get_multivar_foreach(const git_config *cfg, const cha
437
442
  * @param name the variable's name
438
443
  * @param regexp regular expression to filter which variables we're
439
444
  * interested in. Use NULL to indicate all
445
+ * @return 0 or an error code.
440
446
  */
441
447
  GIT_EXTERN(int) git_config_multivar_iterator_new(git_config_iterator **out, const git_config *cfg, const char *name, const char *regexp);
442
448
 
@@ -515,6 +521,7 @@ GIT_EXTERN(int) git_config_set_string(git_config *cfg, const char *name, const c
515
521
  * @param name the variable's name
516
522
  * @param regexp a regular expression to indicate which values to replace
517
523
  * @param value the new value.
524
+ * @return 0 or an error code.
518
525
  */
519
526
  GIT_EXTERN(int) git_config_set_multivar(git_config *cfg, const char *name, const char *regexp, const char *value);
520
527
 
@@ -524,6 +531,7 @@ GIT_EXTERN(int) git_config_set_multivar(git_config *cfg, const char *name, const
524
531
  *
525
532
  * @param cfg the configuration
526
533
  * @param name the variable to delete
534
+ * @return 0 or an error code.
527
535
  */
528
536
  GIT_EXTERN(int) git_config_delete_entry(git_config *cfg, const char *name);
529
537
 
@@ -568,7 +576,8 @@ GIT_EXTERN(int) git_config_foreach(
568
576
  * `git_config_iterator_free` when done.
569
577
  *
570
578
  * @param out pointer to store the iterator
571
- * @param cfg where to ge the variables from
579
+ * @param cfg where to get the variables from
580
+ * @return 0 or an error code.
572
581
  */
573
582
  GIT_EXTERN(int) git_config_iterator_new(git_config_iterator **out, const git_config *cfg);
574
583
 
@@ -585,6 +594,7 @@ GIT_EXTERN(int) git_config_iterator_new(git_config_iterator **out, const git_con
585
594
  * @param out pointer to store the iterator
586
595
  * @param cfg where to ge the variables from
587
596
  * @param regexp regular expression to match the names
597
+ * @return 0 or an error code.
588
598
  */
589
599
  GIT_EXTERN(int) git_config_iterator_glob_new(git_config_iterator **out, const git_config *cfg, const char *regexp);
590
600
 
@@ -662,6 +672,7 @@ GIT_EXTERN(int) git_config_get_mapped(
662
672
  * @param maps array of `git_configmap` objects specifying the possible mappings
663
673
  * @param map_n number of mapping objects in `maps`
664
674
  * @param value value to parse
675
+ * @return 0 or an error code.
665
676
  */
666
677
  GIT_EXTERN(int) git_config_lookup_map_value(
667
678
  int *out,
@@ -678,6 +689,7 @@ GIT_EXTERN(int) git_config_lookup_map_value(
678
689
  *
679
690
  * @param out place to store the result of the parsing
680
691
  * @param value value to parse
692
+ * @return 0 or an error code.
681
693
  */
682
694
  GIT_EXTERN(int) git_config_parse_bool(int *out, const char *value);
683
695
 
@@ -690,6 +702,7 @@ GIT_EXTERN(int) git_config_parse_bool(int *out, const char *value);
690
702
  *
691
703
  * @param out place to store the result of the parsing
692
704
  * @param value value to parse
705
+ * @return 0 or an error code.
693
706
  */
694
707
  GIT_EXTERN(int) git_config_parse_int32(int32_t *out, const char *value);
695
708
 
@@ -702,6 +715,7 @@ GIT_EXTERN(int) git_config_parse_int32(int32_t *out, const char *value);
702
715
  *
703
716
  * @param out place to store the result of the parsing
704
717
  * @param value value to parse
718
+ * @return 0 or an error code.
705
719
  */
706
720
  GIT_EXTERN(int) git_config_parse_int64(int64_t *out, const char *value);
707
721
 
@@ -717,6 +731,7 @@ GIT_EXTERN(int) git_config_parse_int64(int64_t *out, const char *value);
717
731
  *
718
732
  * @param out placae to store the result of parsing
719
733
  * @param value the path to evaluate
734
+ * @return 0 or an error code.
720
735
  */
721
736
  GIT_EXTERN(int) git_config_parse_path(git_buf *out, const char *value);
722
737
 
@@ -735,6 +750,7 @@ GIT_EXTERN(int) git_config_parse_path(git_buf *out, const char *value);
735
750
  * @param regexp regular expression to match against config names (can be NULL)
736
751
  * @param callback the function to call on each variable
737
752
  * @param payload the data to pass to the callback
753
+ * @return 0 or an error code.
738
754
  */
739
755
  GIT_EXTERN(int) git_config_backend_foreach_match(
740
756
  git_config_backend *backend,
@@ -75,7 +75,7 @@ typedef enum {
75
75
  *
76
76
  * @see git_credential_ssh_key_memory_new
77
77
  */
78
- GIT_CREDENTIAL_SSH_MEMORY = (1u << 6),
78
+ GIT_CREDENTIAL_SSH_MEMORY = (1u << 6)
79
79
  } git_credential_t;
80
80
 
81
81
  /**
@@ -254,6 +254,7 @@ typedef void GIT_CALLBACK(git_credential_ssh_interactive_cb)(
254
254
  * Create a new ssh keyboard-interactive based credential object.
255
255
  * The supplied credential parameter will be internally duplicated.
256
256
  *
257
+ * @param out The newly created credential object.
257
258
  * @param username Username to use to authenticate.
258
259
  * @param prompt_callback The callback method used for prompts.
259
260
  * @param payload Additional data to pass to the callback.
@@ -39,6 +39,7 @@ typedef struct git_credential_userpass_payload {
39
39
  * @param allowed_types A bitmask stating which credential types are OK to return.
40
40
  * @param payload The payload provided when specifying this callback. (This is
41
41
  * interpreted as a `git_credential_userpass_payload*`.)
42
+ * @return 0 or an error code.
42
43
  */
43
44
  GIT_EXTERN(int) git_credential_userpass(
44
45
  git_credential **out,
@@ -313,7 +313,7 @@ typedef enum {
313
313
  GIT_DIFF_FORMAT_EMAIL_NONE = 0,
314
314
 
315
315
  /** Don't insert "[PATCH]" in the subject header*/
316
- GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER = (1 << 0),
316
+ GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER = (1 << 0)
317
317
 
318
318
  } git_diff_format_email_flags_t;
319
319
 
@@ -30,7 +30,7 @@ GIT_BEGIN_DECL
30
30
  typedef enum {
31
31
  GIT_DESCRIBE_DEFAULT,
32
32
  GIT_DESCRIBE_TAGS,
33
- GIT_DESCRIBE_ALL,
33
+ GIT_DESCRIBE_ALL
34
34
  } git_describe_strategy_t;
35
35
 
36
36
  /**
@@ -142,6 +142,7 @@ typedef struct git_describe_result git_describe_result;
142
142
  * you're done with it.
143
143
  * @param committish a committish to describe
144
144
  * @param opts the lookup options (or NULL for defaults)
145
+ * @return 0 or an error code.
145
146
  */
146
147
  GIT_EXTERN(int) git_describe_commit(
147
148
  git_describe_result **result,
@@ -152,13 +153,14 @@ GIT_EXTERN(int) git_describe_commit(
152
153
  * Describe a commit
153
154
  *
154
155
  * Perform the describe operation on the current commit and the
155
- * worktree. After peforming describe on HEAD, a status is run and the
156
+ * worktree. After performing describe on HEAD, a status is run and the
156
157
  * description is considered to be dirty if there are.
157
158
  *
158
159
  * @param out pointer to store the result. You must free this once
159
160
  * you're done with it.
160
161
  * @param repo the repository in which to perform the describe
161
162
  * @param opts the lookup options (or NULL for defaults)
163
+ * @return 0 or an error code.
162
164
  */
163
165
  GIT_EXTERN(int) git_describe_workdir(
164
166
  git_describe_result **out,
@@ -172,6 +174,7 @@ GIT_EXTERN(int) git_describe_workdir(
172
174
  * @param result the result from `git_describe_commit()` or
173
175
  * `git_describe_workdir()`.
174
176
  * @param opts the formatting options (or NULL for defaults)
177
+ * @return 0 or an error code.
175
178
  */
176
179
  GIT_EXTERN(int) git_describe_format(
177
180
  git_buf *out,
@@ -180,6 +183,8 @@ GIT_EXTERN(int) git_describe_format(
180
183
 
181
184
  /**
182
185
  * Free the describe result.
186
+ *
187
+ * @param result The result to free.
183
188
  */
184
189
  GIT_EXTERN(void) git_describe_result_free(git_describe_result *result);
185
190