可以通过Python代码提取git repo版本哈希吗?

时间:2012-10-10 19:18:36

标签: python git version

有没有简单的方法可以使用Python代码获取git存储库(在GitHub上)版本哈希?我想用它来处理github上我的软件的'dev'版本的版本。

4 个答案:

答案 0 :(得分:9)

def git_version():
    from subprocess import Popen, PIPE
    gitproc = Popen(['git', 'rev-parse','HEAD'], stdout = PIPE)
    (stdout, _) = gitproc.communicate()
    return stdout.strip()

答案 1 :(得分:1)

喜欢这个吗?

import subprocess
ref = subprocess.check_output("""
    git 2>/dev/null show-ref | awk '/refs\/heads\/master/{print $1}'
""", shell=True)
print ref

如果您还有master

以外的其他内容,请进行调整

答案 2 :(得分:1)

from subprocess import Popen, PIPE

gitproc = Popen(['git', 'show-ref'], stdout = PIPE)
(stdout, stderr) = gitproc.communicate()

for row in stdout.split('\n'):
    if row.find('HEAD') != -1:
        hash = row.split()[0]
        break

print hash

答案 3 :(得分:-1)

您也可以使用GitHub API