Git 开发包,libgit2 v0.22.3 发布
libgit2 是一个可移植、纯C语言实现的 Git 核心开发包,你可以使用它来编写自定义的 Git 应用。
libgit2已被广泛应用在许多应用程序上,包括GitHub网站,还被应用在Plastic SCM和强大的微软Visual Studio工具箱。
主要功能:
-
SHA转换、格式化和缩略词
-
抽象的ODB后端系统
-
提交、标签、树和BLOB解析、编辑、blob解析和回写
-
树遍历
-
revision walking
-
索引文件(临时区域)操作
-
引用管理(包括包引用)
-
配置文件管理
-
高级仓库管理
-
线程安全和可重入
-
错误信息描述非常详细
-
更多(超过175个不同的API调用)
目前,可以绑定到libgit2的语言有,并附上各个语言的绑定方法:
-
C++:https://projects.kde.org/projects/playground/libs/libqgit2/
-
Chicken Scheme:https://wiki.call-cc.org/egg/git
-
Haskell:https://github.com/fpco/gitlib
-
.NET:https://github.com/libgit2/libgit2sharp、https://github.com/txdv/libgit2net
-
Objective-C:https://github.com/libgit2/objective-git
-
Parrot Virtual Machine:https://github.com/letolabs/parrot-libgit2
-
Vala:https://github.com/apmasell/vapis/blob/master/libgit2.vapi
-
b832377 blob: don't recomment using git_buf_grow
-
9ac8fb4 path: error out if the callback returns an error
-
0b4e8ab indexer: use lseek to extend the packfile
-
b494e76 clone: fall back to copying when linking does not work
-
fd8b7cf Fix ident replacement to match Git behavior
-
c066d72 indexer: avoid loading already existent bases
-
76af4ff indexer: don't look for the index we're creating
-
6ba8a33 refspec: make sure matching refspecs have src, dst and input strings
-
c62ab5f Call the openssl API to be able to work with SNI servers.
-
1fcdcb4 ssh: read from stderr if stdout is empty
-
c760654 fileops: set an error on write error for file copy
-
9e74954 fileops: set an error message if we fail to link a file
-
899716b path: don't let direach overwrite the callback's error message
-
ff19d60 Include git2/transaction.h
-
9108d13 Don't include headers on windows that aren't available
-
98f1b3c Attributes: don't match files for folders
-
822af03 Do not call regfree() on an empty regex that is not successfully created by regcomp
-
1c01006 Fix wrong format string in git_reflog_drop() error message
-
b67bc36 attr_file: fix subdirectory attr case.
-
657ddf9 ignore: fix negative ignores without wildcards.
-
7661fa1 Fix checking of return value for regcomp.
-
702ac40 revwalk: don't insert uninteresting commits into the queue
-
98e484b revwalk: detect when we're out of interesting commits
-
04162eb Fix git_checkout_tree() to do index filemodes correctly on Windows.
-
7dc1b1c Make sure to also update delta->nfiles when merging diffs
更多内容请查看软件主页:
该版本下载:Source code (zip)