概述/安装
git python是一个用于与Git存储库交互的python库,高级别的类似于Git瓷器,低级别的类似于Git管道。
它提供了Git对象的抽象,以便于访问存储库数据,并且还允许您使用纯Python实现或更快但资源更密集的Git命令实现更直接地访问Git存储库。
对象数据库实现针对处理大量对象和大型数据集进行了优化,这是通过使用低级结构和数据流实现的。
要求
Python >=3.7
- Git 1.7.0或更新版本
它还应该与旧版本一起工作,但可能有些涉及远程的操作无法按预期工作。
GitDB -纯python git数据库实现
typing_extensions >=3.7.3.4(如果python<3.10)
安装gitpython
使用 pip . 假设已安装,只需从命令行运行以下命令:
# pip install GitPython
此命令将从 Python Package Index 并将其安装到您的系统中。有关的详细信息 pip
Pypi可以在这里找到:
或者,您可以使用 setup.py
脚本:
# python setup.py install
备注
在这种情况下,必须手动安装 GitDB 也。建议使用 git source repository 在这种情况下。
局限性
系统资源泄漏
gitpython不适合长时间运行的进程(如守护进程),因为它容易泄漏系统资源。它是在一个析构函数(如 __del__ 方法)仍具有确定性。
如果您仍然希望在这样的上下文中使用它,您将希望在代码库中搜索 __del__ 实现,并在您认为合适时自己调用它们。
另一种确保正确清理资源的方法是将gitpython分解成一个单独的进程,该进程可以定期删除。
入门
gitpython教程 -本教程介绍了GitPython中使用的一些基本功能和概念。但是,它并不详尽,因此鼓励您花一些时间在 API引用 .
API引用
gitpython API的一个有组织的部分位于 API引用 .
源代码
Gitpython的Git回购可在GitHub上获得,可在以下网址浏览:
克隆使用:
$ git clone https://github.com/gitpython-developers/GitPython git-python
初始化所有子模块以获取所需的依赖项::
$ cd git-python
$ git submodule update --init --recursive
最后通过运行单元测试来验证安装:
$ python -m unittest
问题和答案
请使用stackoverflow提问,不要忘记用 gitpython 确保正确的人及时看到问题。
问题跟踪器
问题跟踪程序由Github托管:
许可证信息
gitpython是根据新的BSD许可证获得许可的。有关详细信息,请参阅许可证文件。