Python操作Git库 `GitPython`
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python操作Git库 `GitPython`相关的知识,希望对你有一定的参考价值。
参考技术A 参考文章参考文章
复杂点的参考
试了一圈发现,git库的用法设置非常符合原生git命令,只不过之间加了个 . 而已。
比如原本命令行里是 git add . ,这里就是 repo.git.add('.') ,
原本是 git commit -m "信息" ,这里就是 repo.git.commit(m='信息')
可以说减少了很多学习时间,基本上我很多都是没参考文档自己猜出来的也能用。
库安装好后可以直接在python中用了。
文件夹地址可以是全路径,也可以是 . 当前文件夹、 ../ 上级文件夹等用法。
python git 基础操作
模块安装
pip install gitpython
基本用法
1. 初始化
from git import Repo
Repo.init(‘/data/test2‘) # 创建一个git文件夹
2. 添加与提交
repo.index.add([‘a.txt‘]) #将文件提交到缓存区
repo.inex.commit(‘update new‘) # 将缓存区文件提交到版本库
3. 回滚
repo.index.checkout([‘a.txt‘]) # 回滚缓存区文件
repo.index.reset(commit=‘486a9565e07ad291756159dd015eab6acda47e25‘,head=True) #回滚版本库文件
4.分支
repo.create_head(‘debug‘) # 创建分支
5. tag
repo.create_tag(‘v1.0‘) # 创建tag
6. 拉取远程仓库
clone_repo=git.Repo.clone_from(‘https://github.com/wangfeng7399/syncmysql.git‘,‘/data/test3‘) #拉取远程代码
remote = repo.remote()
# 从远程版本库拉取分支
remote.pull(‘master‘) #后面跟需要拉取的分支名称
# 推送本地分支到远程版本库
remote.push(‘master‘) #后面跟需要提交的分支名称
7. 使用原生命令
repo=git.Git(‘/data/test4‘)
repo.checkout(‘debug‘)
print(repo.status())
#所有git支持的命令这里都支持
文章记录操作,转自https://www.cnblogs.com/russellyoung/p/python-cao-zuogit.html
以上是关于Python操作Git库 `GitPython`的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Python 和 PyGithub/GitPython 克隆我的 git 存储库?
python 检查目录中的所有git存储库,看它们是否干净或脏。测试时间:GitPython == 0.1.7 argparse == 1.2.1 prettytable == 0.7.2
python [python] [gitpython] gitでファイルの更新日付をコミット日时に调整