赞
踩
最近在用python做一个小工具,想集成一些常用的Git操作供项目组总的非程序同学使用,在网上找到了gitPython,这里记录一下我的用到的功能。
源码:https://github.com/gitpython-developers/GitPython
文档:https://gitpython.readthedocs.io/en/stable/tutorial.html
1、安装 gitPython
本地环境要求:
1)Python >= 3.7
2)Git 1.7.0 or newer
注意 Git 也是必须要安装的, 可以使用
git --version
检查一下是否符合要求。笔者使用的GitHubDesktop 软件并没有安装git到本地环境(具体原理还不清楚,有了解的同学可以留言指点一下),所以又单独下载的 GitForWindows.
使用 pip install gitpython
安装,安装完成后可以使用 pip show gitpython
查看版本信息。
2.脚本中使用
gitPython 做了很复杂的功能,而且其中一些概念的命名与Git本身并不相同。笔者在使用了之后决定完全调用Git的原生指令,即 repo.git.COMMAND(P1,P2…) 的形式,其中 COMMAND 为git的原始命令 如pull\push\status等, COMMAND中如果有"-“,使用”_"替换;P1、P2… 即为原始命令的参数列表。
对库中封装后的使用方式有感兴趣的可以查看上边链接中的文档,里边有的完整资料。以下代码用于演示在已有的git本地仓库中的使用:
import git
repo = git.Repo(repoRootDir) #本地仓库的根目录
repo.git.pull() #等同于 git pull
repo.git.add(filename) #git add file
repo.git.commit('-m','msg') #git commit -m msg
repo.git.push() #git push
repo.git.rev_parse('HEAD') #git rev-parse HEAD
只要掌握git的命令行命令即可,这样就很简单明了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。