本文介绍了排序的GitPython标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!
问题描述
我正在尝试使用GitPython库获取repo中的最新标记。通常我是这样做的:
repo = Repo(project_root)
last_tag = str(repo.tags[-1])
但是一旦发布版本1.10,我总是得到1.9;(我知道这与输出git tag -l列出的顺序相同有关。因此它将是1.1, 1.10, 1.2, ..., 1.9
git tag -l | sort -V,我知道不使用repo对象如何解决这个问题。但可能有人知道我在此库中获取排序标签列表时遗漏了什么)
自定义排序功能也一直是一个选项,但是我想知道有没有办法用GitPython来做到这一点?
推荐答案
我刚刚看了一下,找到了code responsible for the sorting。因此,我别无选择,只能自己颠倒排序顺序,如
reversed(repo.tags)
如果愿意,您也可以使用底层的git命令,自己解析结果,如下例所示:
repo.git.tag(l=True) # equals git tag -l
这样,无论git tag能做什么,您都可以做(从给定的提交开始,按照遍历顺序列出标记可能会很有趣)。
这篇关于排序的GitPython标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
The End


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)