Skip to main content

Commits

Reference documentation for GraphQL schema types in the Commits category.

Mutations

createCommitOnBranch

Mutation

Appends a commit to the given branch as the authenticated user.

This mutation creates a commit whose parent is the HEAD of the provided branch and also updates that branch to point to the new commit. It can be thought of as similar to git commit.

Locating a Branch

Commits are appended to a branch of type Ref. This must refer to a git branch (i.e. the fully qualified path must begin with refs/heads/, although including this prefix is optional.

Callers may specify the branch to commit to either by its global node ID or by passing both of repositoryNameWithOwner and refName. For more details see the documentation for CommittableBranch.

Describing Changes

fileChanges are specified as a FilesChanges object describing FileAdditions and FileDeletions.

Please see the documentation for FileChanges for more information on how to use this argument to describe any set of file changes.

Authorship

Similar to the web commit interface, this mutation does not support specifying the author or committer of the commit and will not add support for this in the future.

A commit created by a successful execution of this mutation will be authored by the owner of the credential which authenticates the API request. The committer will be identical to that of commits authored using the web interface.

If you need full control over author and committer information, please use the Git Database REST API instead.

Commit Signing

Commits made using this mutation are automatically signed by GitHub if supported and will be marked as verified in the user interface.

Input fields for createCommitOnBranch

Return fields for createCommitOnBranch

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

commit (Commit)

The new commit.

ref (Ref)

The ref which has been updated to point to the new commit.

Objects

Commit

Object

Represents a Git commit.

Commit Implements

Fields for Commit

NameDescription

abbreviatedOid (String!)

An abbreviated version of the Git object ID.

additions (Int!)

The number of additions in this commit.

associatedPullRequests (PullRequestConnection)

The merged Pull Request that introduced the commit to the repository. If the commit is not present in the default branch, additionally returns open Pull Requests associated with the commit.

Arguments for associatedPullRequests

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

author (GitActor)

Authorship details of the commit.

authoredByCommitter (Boolean!)

Check if the committer and the author match.

authoredDate (DateTime!)

The datetime when this commit was authored.

authors (GitActorConnection!)

The list of authors for this commit based on the git author and the Co-authored-by message trailer. The git author will always be first.

Arguments for authors

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

blame (Blame!)

Fetches git blame information.

Arguments for blame

  • path (String!)

    The file whose Git blame information you want.

changedFiles (Int!)

We recommend using the changedFilesIfAvailable field instead of changedFiles, as changedFiles will cause your request to return an error if GitHub is unable to calculate the number of changed files.

Warning

changedFiles is deprecated.

changedFiles will be removed. Use changedFilesIfAvailable instead. Removal on 2023-01-01 UTC.

changedFilesIfAvailable (Int)

The number of changed files in this commit. If GitHub is unable to calculate the number of changed files (for example due to a timeout), this will return null. We recommend using this field instead of changedFiles.

checkSuites (CheckSuiteConnection)

The check suites associated with a commit.

Arguments for checkSuites

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

comments (CommitCommentConnection!)

Comments made on the commit.

Arguments for comments

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

commitResourcePath (URI!)

The HTTP path for this Git object.

commitUrl (URI!)

The HTTP URL for this Git object.

committedDate (DateTime!)

The datetime when this commit was committed.

committedViaWeb (Boolean!)

Check if committed via GitHub web UI.

committer (GitActor)

Committer details of the commit.

deletions (Int!)

The number of deletions in this commit.

deployments (DeploymentConnection)

The deployments associated with a commit.

Arguments for deployments

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • environments ([String!])

    Environments to list deployments for.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • orderBy (DeploymentOrder)

    Ordering options for deployments returned from the connection.

file (TreeEntry)

The tree entry representing the file located at the given path.

Arguments for file

  • path (String!)

    The path for the file.

history (CommitHistoryConnection!)

The linear commit history starting from (and including) this commit, in the same order as git log.

Arguments for history

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • author (CommitAuthor)

    If non-null, filters history to only show commits with matching authorship.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • path (String)

    If non-null, filters history to only show commits touching files under this path.

  • since (GitTimestamp)

    Allows specifying a beginning time or date for fetching commits. Unexpected results may be returned for dates not between 1970-01-01 and 2099-12-13 (inclusive).

  • until (GitTimestamp)

    Allows specifying an ending time or date for fetching commits. Unexpected results may be returned for dates not between 1970-01-01 and 2099-12-13 (inclusive).

id (ID!)

The Node ID of the Commit object.

message (String!)

The Git commit message.

messageBody (String!)

The Git commit message body.

messageBodyHTML (HTML!)

The commit message body rendered to HTML.

messageHeadline (String!)

The Git commit message headline.

messageHeadlineHTML (HTML!)

The commit message headline rendered to HTML.

oid (GitObjectID!)

The Git object ID.

onBehalfOf (Organization)

The organization this commit was made on behalf of.

parents (CommitConnection!)

The parents of a commit.

Arguments for parents

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

pushedDate (DateTime)

The datetime when this commit was pushed.

Warning

pushedDate is deprecated.

pushedDate is no longer supported. Removal on 2023-07-01 UTC.

repository (Repository!)

The Repository this commit belongs to.

resourcePath (URI!)

The HTTP path for this commit.

signature (GitSignature)

Commit signing information, if present.

status (Status)

Status information for this commit.

statusCheckRollup (StatusCheckRollup)

Check and Status rollup information for this commit.

submodules (SubmoduleConnection!)

Returns a list of all submodules in this repository as of this Commit parsed from the .gitmodules file.

Arguments for submodules

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

tarballUrl (URI!)

Returns a URL to download a tarball archive for a repository. Note: For private repositories, these links are temporary and expire after five minutes.

tree (Tree!)

Commit's root Tree.

treeResourcePath (URI!)

The HTTP path for the tree of this commit.

treeUrl (URI!)

The HTTP URL for the tree of this commit.

url (URI!)

The HTTP URL for this commit.

viewerCanSubscribe (Boolean!)

Check if the viewer is able to change their subscription status for the repository.

viewerSubscription (SubscriptionState)

Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.

zipballUrl (URI!)

Returns a URL to download a zipball archive for a repository. Note: For private repositories, these links are temporary and expire after five minutes.

CommitAuthorEmailPatternParameters

Object

Parameters to be used for the commit_author_email_pattern rule.

Fields for CommitAuthorEmailPatternParameters

NameDescription

name (String)

How this rule appears when configuring it.

negate (Boolean!)

If true, the rule will fail if the pattern matches.

operator (String!)

The operator to use for matching.

pattern (String!)

The pattern to match with.

CommitComment

Object

Represents a comment on a given Commit.

CommitComment Implements

Fields for CommitComment

NameDescription

author (Actor)

The actor who authored the comment.

authorAssociation (CommentAuthorAssociation!)

Author's association with the subject of the comment.

body (String!)

Identifies the comment body.

bodyHTML (HTML!)

The body rendered to HTML.

bodyText (String!)

The body rendered to text.

commit (Commit)

Identifies the commit associated with the comment, if the commit exists.

createdAt (DateTime!)

Identifies the date and time when the object was created.

createdViaEmail (Boolean!)

Check if this comment was created via an email reply.

databaseId (Int)

Identifies the primary key from the database.

editor (Actor)

The actor who edited the comment.

id (ID!)

The Node ID of the CommitComment object.

includesCreatedEdit (Boolean!)

Check if this comment was edited and includes an edit with the creation data.

isMinimized (Boolean!)

Returns whether or not a comment has been minimized.

lastEditedAt (DateTime)

The moment the editor made the last edit.

minimizedReason (String)

Returns why the comment was minimized. One of abuse, off-topic, outdated, resolved, duplicate, spam, and low-quality. Note that the case and formatting of these values differs from the inputs to the MinimizeComment mutation.

path (String)

Identifies the file path associated with the comment.

position (Int)

Identifies the line position associated with the comment.

publishedAt (DateTime)

Identifies when the comment was published at.

reactionGroups ([ReactionGroup!])

A list of reactions grouped by content left on the subject.

reactions (ReactionConnection!)

A list of Reactions left on the Issue.

Arguments for reactions

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • orderBy (ReactionOrder)

    Allows specifying the order in which reactions are returned.

repository (Repository!)

The repository associated with this node.

resourcePath (URI!)

The HTTP path permalink for this commit comment.

updatedAt (DateTime!)

Identifies the date and time when the object was last updated.

url (URI!)

The HTTP URL permalink for this commit comment.

userContentEdits (UserContentEditConnection)

A list of edits to this content.

Arguments for userContentEdits

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

viewerCanDelete (Boolean!)

Check if the current viewer can delete this object.

viewerCanMinimize (Boolean!)

Check if the current viewer can minimize this object.

viewerCanReact (Boolean!)

Can user react to this subject.

viewerCanUnminimize (Boolean!)

Check if the current viewer can unminimize this object.

viewerCanUpdate (Boolean!)

Check if the current viewer can update this object.

viewerCannotUpdateReasons ([CommentCannotUpdateReason!]!)

Reasons why the current viewer can not update this comment.

viewerDidAuthor (Boolean!)

Did the viewer author this comment.

CommitCommentConnection

Object

The connection type for CommitComment.

Fields for CommitCommentConnection

NameDescription

edges ([CommitCommentEdge])

A list of edges.

nodes ([CommitComment])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

CommitCommentEdge

Object

An edge in a connection.

Fields for CommitCommentEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (CommitComment)

The item at the end of the edge.

CommitCommentThread

Object

A thread of comments on a commit.

CommitCommentThread Implements

Fields for CommitCommentThread

NameDescription

comments (CommitCommentConnection!)

The comments that exist in this thread.

Arguments for comments

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

commit (Commit)

The commit the comments were made on.

id (ID!)

The Node ID of the CommitCommentThread object.

path (String)

The file the comments were made on.

position (Int)

The position in the diff for the commit that the comment was made on.

repository (Repository!)

The repository associated with this node.

CommitConnection

Object

The connection type for Commit.

Fields for CommitConnection

NameDescription

edges ([CommitEdge])

A list of edges.

nodes ([Commit])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

CommitContributionsByRepository

Object

This aggregates commits made by a user within one repository.

Fields for CommitContributionsByRepository

NameDescription

contributions (CreatedCommitContributionConnection!)

The commit contributions, each representing a day.

Arguments for contributions

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

repository (Repository!)

The repository in which the commits were made.

resourcePath (URI!)

The HTTP path for the user's commits to the repository in this time range.

url (URI!)

The HTTP URL for the user's commits to the repository in this time range.

CommitEdge

Object

An edge in a connection.

Fields for CommitEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (Commit)

The item at the end of the edge.

CommitHistoryConnection