How can I get last commit from GitHub API
You can also use Github GraphQL v4 to get the last commit of the default branch :
{
repository(name: "linux", owner: "torvalds") {
defaultBranchRef {
target {
... on Commit {
history(first: 1) {
nodes {
message
committedDate
authoredDate
oid
author {
email
name
}
}
}
}
}
}
}
}
Or for all branches :
{
repository(name: "material-ui", owner: "mui-org") {
refs(first: 100, refPrefix: "refs/heads/") {
edges {
node {
name
target {
... on Commit {
history(first: 1) {
nodes {
message
committedDate
authoredDate
oid
author {
email
name
}
}
}
}
}
}
}
}
}
}
Try it in the explorer
Another method to getting the latest commit from a user would be using the following endpoint. To clarify, this will only show public
events so pushes to a private repository will not be shown. https://api.github.com/users/<username>/events/public
It depends on your definition of "last".
for a given branch (like
master
),GET /repos/:owner/:repo/commits/master
is indeed the last (most recent) commit.But you can also consider the last push event: that would represent the last and most recent commit done (on any branch), pushed by a user to this repo.