阅读更多

0顶
0踩

开源软件

原创新闻 libgit2:纯C语言实现的Git开发包

2013-10-31 09:59 by 副主编 mengyidan1988 评论(0) 有10587人浏览
libgit2是一个可移植、纯C语言实现的Git开发包,作为一款带有稳固API的可重入链接库,libgit2允许你使用任何语言来编写Git应用。此外,libgit2可以应用在各个平台上,包括Unix、Linux、MacOS X、Windows等。

libgit2的开源许可非常自由(GPLv2 with a special Linking Exception),这意味着你可以在产品中随意使用libgit2,即使是闭源的商业项目。

用途

libgit2已被广泛应用在许多应用程序上,包括GitHub网站,还被应用在Plastic SCM和强大的微软Visual Studio工具箱上。该库主要提供以下功能:

  • SHA转换、格式化和缩略词;
  • 抽象的ODB后端系统;
  • 提交、标签、树和BLOB解析、编辑、blob解析和回写;
  • 树遍历
  • revision walking
  • 索引文件(临时区域)操作
  • 引用管理(包括包引用)
  • 配置文件管理
  • 高级仓库管理
  • 线程安全和可重入
  • 错误信息描述非常详细
  • 更多(超过175个不同的API调用)
目前,可以绑定到libgit2的语言有,并附上各个语言的绑定方法:

0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 实现 Git 目录权限控制

     机制,目前 libgit2 并不支持此特性,所以要实现目录只读也不能直接使用  pre-receive  钩子。 最终,只有  update  钩子可用。 在实现目录权限检测时,我们应当先初始化规则,在  git-analyze  项目...

  • 中文翻译:Git Rev News: Edition 1 (March 25th, 2015)

    翻译Git Rev News第一期,原文链接:https://git.github.io/rev_news/2015/03/25/edition-1/

  • Windows 下 gcc + golang 编译 git2go

    是Git核心开发包的纯c实现,可以很容易移植和嵌入到别的应用中。官网也提供的它和各种语言的绑定,比如Go语言的 git2go 。 在Mac上golang编译git2go很容易: brew install libgit2 go get github....

  • libgit二次开发

    libgit2是一个可移植、纯C语言实现的Git开发包,作为一款带有稳固API的可重入链接库,libgit2允许你使用任何语言来编写Git应用。 网站:libgit2.github.comAPI文档:http://libgit2.github.com/libgit2 如需要用...

  • 基于C语言设计的增量型安全文件系统 SFS

    libgit2:版本 0.24.1,使用 apt install libgit2-dev 安装; fio:版本 2.2.10,使用 apt install fio 安装; 其他必要的 GCC 工具链。 正确性测试 在分别实现并测试 SFS 的各个接口之后,我们使用在 SFS 上编译...

  • C++跨平台开源库 之二

    值得学习的C/C++语言开源项目(1)ACE 庞大、复杂,适合大型项目。...Asio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。 开源、免费,支持跨平台。 http://think-async.com/(3)POCO POCO

  • C语言常用库

    C 语言资源大全 koz.ross 维护的一个 C 语言资源列表,包括了:构建系统、编译器、数据库、加密、初中高的教程/指南、书籍、库等等。 ...欢迎收藏和扩散。...加 Q 时请注明「C语言大全」。// 这不是

  • python扩展包中文介绍:截止2019.12.01

    文章目录python 扩展包基本信息基本功能介绍 python 扩展包基本信息 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 基本功能介绍 A APSW,另一个Python Sqlite封装。 Aspell-python,Aspell软件的Python绑定 ...

  • C 语言资源大全总结--各种框架各种开源库,c开发必备

    一个可扩展的 M4 宏指令包,提供命令行脚本来自动配置软件源码包,是 Autotools 的一部分。 GNU GPL3  或更高版本。 Automake  – 一个自动生成符合 GNU 代码标准的 Makefile.in 文件的工具。需要与 Autoconf ...

  • 盘点 Github 所用到的开源项目

    libgit2是一个可移植、纯C语言实现的Git核心开发包,作为一款带有稳固API的可重入链接库,libgit2允许你使用任何语言来编写Git应用。此外,libgit2可以应用在各个平台上,包括Unix、Linux、MacOS X、Windows等。  ...

  • GitHub---精彩开源项目

    ...在致力于开源事业的同时,Github也使用一些非常优秀的开源项目的来打造自己的平台与服务,本文总结了Github所用到各种开源项目,它们分别扮演着不同的角色。...Linguist直译是语言学家的意思,采用Ruby开发

  • C 程序员必须收藏的资源大全

    C 资源大全列表 构建系统 下面是一些 C 项目的自动化构建和测试工具。... Autoconf – 一个可扩展的 M4 宏指令包,提供命令行脚本来自动配置软件源码包,是 Autotools 的一部分。GNU GPL3 或更...

  • 转:支撑Github的开源技术

    libgit2是一个可移植、纯C语言实现的Git核心方法类库,提供API重新链入Git方法。Github的背后使用的原生的git来实现commit、push等功能,但是使用libgit2来针对桌面应用调用、Ruby代码中调用等; rugged ...

  • LFD,非官方的Windows二进制文件的Python扩展包

    LFD,非官方的Windows二进制文件的Python扩展包 LFD,非官方版本、32和64位、Windows、二进制文件、科学开源、Python扩展包 克里斯托夫·戈尔克(by Christoph Gohlke),LFD(荧光动力学实验室),加利福尼亚大学,...

  • iOS常用三方库、插件、知名技术博客、常用开发工具使用介绍等等(Objective-C版本)

    - OneM是一款纯ReactNative打造的集杂志浏览、音乐播放、视频播放于一体的综合性App,并且支持iOS和Android双平台. ZMBCY-iOS - 高仿二次元网易GACHA,所有接口均通过Charles抓取而来,里面有可单独抽离出来的卡片...

  • C 语言资源大全中文版

    SDL2:一个跨平台库,通过 OpenGL 提供音频,键盘,鼠标,操纵杆和图形硬件的底层访问。这是最新版本。 zlib 。 官网 通用编程 klib:小且轻量级的常用算法和数据结构实现。 Expat 。 官网 图形 ...

  • dnSpy-net-win32-222.zip

    dnSpy-net-win32-222.zip

  • 和美乡村城乡融合发展数字化解决方案.docx

    和美乡村城乡融合发展数字化解决方案.docx

  • 如何看待“适度宽松”的货币政策.pdf

    如何看待“适度宽松”的货币政策.pdf

Global site tag (gtag.js) - Google Analytics