1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
import git class Git: def __init__(self, repo_path): try: self.repo = git.Repo(repo_path) except git.InvalidGitRepositoryError: raise ValueError(f"Invalid git repository at {repo_path}") def get_branches(self): return self.repo.branches def get_commits(self): return list(self.repo.iter_commits()) def get_tags(self): return self.repo.tags