自动化枯燥的git任务

python-git的Python项目详细描述


#python git

使用python自动完成无聊的git工作


D在工作。

但我很快就厌倦了。所以我决定用这个工具给我一个快速的报告,这样我就可以一眼看出前面是什么,后面是什么,前面是什么。`可以从命令行(即在系统路径中)访问,也可以作为系统中某个独立文件访问。
如果您没有安装权限,则可以使用可移植的"git",而"python git"也可以正常工作。

(https://git scm.com/download/win)

稍后(在初始化过程中),您需要告诉"python git"此文件的位置。


打开一个终端,使用适当的命令行参数在下面的行中输入python-m pygit。

python-m pygit--help的输出如下所示。

``cmd
用法:pygit。初始化python git的工作目录
[-h][-v{0,1}[-r rules[rules…][-g gitpath]
[-m masterdirectory][-s simpledirectory[simpledirectory…]]


可选参数:
-h,--help显示此帮助消息并退出
-v{0,1},--verbositey{0,1}
打开/关闭详细信息
-r规则[规则…],--规则规则[规则…]
设置文件夹的字符串模式列表,以便在设置期间跳过
-g gitpath,--gitpath gitpath
fullGit可执行文件的路径名。CMD或bash。
-m主目录,--masterdirectory主目录
保存任意数量git
repos的目录的完整路径名。
-s simpledirectory[simpledirectory…],--simpledirectory simpledirectory[simpledirectory…]
任意数量的git repo的完整路径列表。
```


\ git-v 1



如果情况发生变化(可能是您移动了文件夹或添加了新的git repo),您希望重置文件夹,只需重新执行初始化步骤


按照下面显示的格式显示所有git repos

pygit.load(repo id_或_name)#加载一个repo

,其中"repo\u id"是分配给该特定repo的字符串值id。"repo s"命令输出中的第一个值。

`load(input_string)`commands`命令返回该repo的"commands"对象,该对象为在存储库上发出git命令提供网关

r=pygit.load_repo(repo_id_或_name)
r.fetch()perform fetch
r.status()请参阅status
r.add_all()为commit准备所有更改
r.commit(消息='chore:minor changes')提交更改。按enter接受de错误消息
r.push()执行push操作
r.pull()执行pull请求一组repo
pygit.load_multiple("2","5")仅加载repo 2和5

返回存储库2和5的"commands"对象的"生成器"。然后,您可以对pygit中的每个repo循环如下

``python
。load_multiple("2","5"):
each.add_commit()
````


对所有索引的repo执行"status"命令。结果被写入标记文件。
带有发出命令的时间戳。如果愿意,可以称之为回购状态的快照。与远程对应项不同步的项也会突出显示为需要注意。

pygit.pull_all()

它返回"none"。



一次对所有索引回购执行"push"操作。它返回"none"。



为每个索引回购返回"commands"对象的"generator"。


to do

1。添加"git bash.exe"
1。实现"commands.branch()`
1。重构测试
1。在导入后进行自动运行测试,以确保其他所有操作正常。



欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在设置AtomicBoolean之前检查另一个条件?   通过java将文件从windows计算机复制到另一台windows计算机   java如何在使用Cobertura时忽略与记录器相关的If条件?   java无法在Eclipse中导出Android应用程序   带GSON的java parse JSON返回null   java Extract/filter Splunk查询和条件逻辑   java ProgressBar带有一个倒计时器Android   java我应该为每个DAO编写通用方法的集成测试吗?   java从命令行访问执行JAR的文本文件   任务应用程序的java Gradle生成失败:processReleaseResources   预测函数的java DeepLearning4j NN不收敛   java如果发现特殊字符,如何删除字符串中的字符?   在Java中,从精确位置将字符串拆分为两个   将Java ByteArrayOutputStream压缩到不同的容器中   带有同心指示方块的java太空船模拟器制导计算机   java如何使用Jericho解析两条注释?   PersistenceUnit中的java多个类   连接到java中的elasticsearch?   当嵌入HTML页面时,删除java小程序中的外部白色边框   用于webstart的java CXF ClassCastException(SEIStub/ClientProxy)