Solución:
En busca de un .git
El directorio no funcionará en todos los casos. El comando de git correcto es:
git rev-parse --show-toplevel
Utilice el módulo de GitPython http://gitpython.readthedocs.io/en/stable/.
pip install gitpython
Suponga que tiene un repositorio de Git local en /path/to/.git
. El siguiente ejemplo recibe /path/to/your/file
como entrada, devuelve correctamente la raíz de Git como /path/to/
.
import git
def get_git_root(path):
git_repo = git.Repo(path, search_parent_directories=True)
git_root = git_repo.git.rev_parse("--show-toplevel")
print git_root
if __name__ == "__main__":
get_git_root("/path/to/your/file")
El módulo GitPython le proporciona este atributo de inmediato:
import git
repo = git.Repo('.', search_parent_directories=True)
repo.working_tree_dir
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)