Gitpython操作git库

GitPython 是一个用于操作 Git 版本库的 python 包,

它提供了一系列的对象模型(库 - Repo、树 - Tree、提交 - Commit等)
用于操作版本库中的相应对象。

安装

1
pip install GitPython

##版本库对象 - Repo

0x01 初始化仓库

1
2
from git import Repo
Repo.init('/data/test2') # 创建一个git文件夹

0x02 创建版本库对象

1
repo = git.Repo(r'E:\Notes')

0x03 操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 版本库是否为空版本库
repo.bare

# 当前工作区是否干净
repo.is_dirty()

# 版本库中未跟踪的文件列表
repo.untracked_files

# 克隆版本库
repo.clone('clone_path')

# 压缩版本库到 tar 文件
with open('repo.tar', 'wb') as fp:
repo.archive(fp)

# 新建分支
repo.create_head('branchname')

# 查看当前分支
repo.active_branch