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.