example python git gitpython

example - install git python



log git--follow, la forma gitpython (1)

Estoy tratando de acceder al historial de confirmación de un solo archivo como en:

git log --follow -- <filename>

Tengo que usar gitpython , entonces lo que estoy haciendo ahora es:

import git g = git.Git(''repo_dir'') hexshas = g.log(''--pretty=%H'',''--follow'',''--'',filename).split(''/n'')

luego construyo los objetos de confirmación:

repo = git.Repo(''repo_dir'') commits = [repo.rev_parse(c) for c in r]

¿Hay una manera de hacerlo de una manera más gitpython-ic? commit.iter_parents() tanto commit.iter_parents() como commit.iter_items() , pero ambos dependen de git-rev-list , por lo que no tienen una opción --follow .


Por ejemplo,

Con rango de tiempo:

g = git.Git("C:/path/to/your/repo") loginfo = g.log(''--since=2013-09-01'',''--author=KIM BASINGER'',''--pretty=tformat:'',''--numstat'') print loginfo

Salida:

3 2 path/in/your/solutions/some_file.cs

Puede ver las líneas agregadas, las líneas eliminadas y el archivo con estos cambios.