章节 ▾
第二版
-
A1. 附录A:其他环境中的Git
- A1.1 图形界面
- A1.2 Visual Studio中的Git
- A1.3 Visual Studio Code中的Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine中的Git
- A1.5 Sublime Text中的Git
- A1.6 Bash中的Git
- A1.7 Zsh中的Git
- A1.8 PowerShell中的Git
- A1.9 总结
-
A2. 附录B:在应用程序中嵌入Git
-
A3. 附录C:Git命令
A2.5 附录B:在应用程序中嵌入Git - Dulwich
Dulwich
还有一个纯Python的Git实现 - Dulwich。该项目托管在 https://www.dulwich.io/。其目标是提供一个用于访问Git仓库(本地和远程)的接口,该接口不直接调用Git,而是使用纯Python。不过,它有一个可选的C扩展,可以显著提高性能。
Dulwich 遵循Git的设计,将API分为两个基本级别:底层和外层。
以下是用底层API访问最后一次提交的提交消息的示例
from dulwich.repo import Repo
r = Repo('.')
r.head()
# '57fbe010446356833a6ad1600059d80b1e731e15'
c = r[r.head()]
c
# <Commit 015fc1267258458901a94d228e39f0a378370466>
c.message
# 'Add note about encoding.\n'
要使用高级外层API打印提交日志,可以使用
from dulwich import porcelain
porcelain.log('.', max_entries=1)
#commit: 57fbe010446356833a6ad1600059d80b1e731e15
#Author: Jelmer Vernooij <[email protected]>
#Date: Sat Apr 29 2017 23:57:34 +0000
进一步阅读
Dulwich的API文档、教程和许多关于如何使用Dulwich完成特定任务的示例都可以在官方网站上找到 https://www.dulwich.io。