AbhinavChoudhury
AbhinavChoudhury

Reputation: 1187

Github API for Python : PyGithub - get a list of all commits for a particular repository

I am developing a script which requires me to get a list of all commits for a particular repository, as well as the date and time of commit. The Commit Class in the PyGithub API:

https://github.com/jacquev6/PyGithub/blob/master/doc/ReferenceOfClasses.md#class-commit

does not have any member for date-of-commit and time-of-commit. Any ideas on how to get the date and time of a commit using the API?

Upvotes: 4

Views: 8080

Answers (3)

qloveshmily
qloveshmily

Reputation: 1051

   from github import Github

   gh = Github(base_url="", login_or_token="")

   repo = gh.get_repo(repo_name)

   #returned commits in a paginated list
   commits = repo.get_commits()

Upvotes: 0

Bea
Bea

Reputation: 158

A bit late to answer, but you can get the information from the GitAuthor of the GitCommit of the Commit. This will print the dates of all the commits:

for commit in commits:
    if commit.commit is not None:
        print commit.commit.author.date

Upvotes: 4

ndpu
ndpu

Reputation: 22561

I think you need to call

commit.getStatuses()

and in each satsus there is attributes created_at and updated_at

from here: https://github.com/jacquev6/PyGithub/blob/master/doc/ReferenceOfClasses.md#class-commitstatus

Class CommitStatus

Attributes:

  • created_at: datetime.datetime
  • creator: NamedUser
  • description: string
  • id: integer
  • state: string
  • target_url: string
  • updated_at: datetime.datetime

Upvotes: 0

Related Questions