【问题标题】:Check if Python package on git is newer than local检查 git 上的 Python 包是否比本地更新
【发布时间】:2020-02-26 17:11:08
【问题描述】:

我有一个包,通过要求人们运行来分发:

pip install git+"https://gitlab.com/project/mypackage.git@master"

我想要一个 Python 脚本,它在运行时标记本地包比远程包旧(我想避免自动更新它)

我正在考虑执行以下操作,比如check_version.py

from pkg_resources import parse_version, get_distribution
local_version = parse_version(get_distribution("mypackage").version)

def foo()
    # GET GIT REPO PACKAGE VERSION
    return repo_version

repo_version = foo()

if local_version < repo_version:
    print("Local Installation is out of date")
else:
    print("Local Installation is up to date.")

但是我不确定如何查询 git repo 以获取版本号...基本上应该实现 foo 功能,有什么想法吗?

【问题讨论】:

  • git 有命令行界面。通过 python git 命令调用,并在 foo 函数中执行它们。你检查过如何通过命令行调用 git 命令吗?

标签: python git pip


【解决方案1】:

在只有当前版本的存储库中创建一个简单的文本文件VERSION。 Gitlab 的每个文件都有一个原始 URL;您的文件将在https://gitlab.com/project/mypackage/raw/master/VERSION 上提供。使用httplib/http.clienturllibrequests等读取foo中的URL内容。

【讨论】:

    猜你喜欢
    • 2011-12-17
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 2020-01-30
    • 2020-02-09
    • 2015-12-01
    • 1970-01-01
    相关资源
    最近更新 更多