Source code for repo_splitter.github_tools.query

from github import Github
from github.Repository import Repository


[docs]def github_repo_from_clone_url(clone_url: str, token: str) -> Repository: ghub = Github(token) user = ghub.get_user() repo_result = None for repo in user.get_repos(): if repo.clone_url == clone_url: repo_result = repo break if repo_result is None: raise NoSuchGithubRepositoryException(f'could not find a Github repository for this user matching ' f'the clone url {clone_url}') return repo_result
[docs]class NoSuchGithubRepositoryException(Exception): pass