summaryrefslogtreecommitdiffstats
path: root/src/g2h/git.py
blob: 283135c52474b2a900caaf3a15ab95a6b271b3e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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_head(self):
        return self.repo.head.commit

    def get_repo(self):
        return self.repo

    def get_tags(self):
        return self.repo.tags