Skip to content
git-commit

GitHub Action

GitHub App Commit Action

v1.4.0 Latest version

GitHub App Commit Action

git-commit

GitHub App Commit Action

Makes it simple to make verified Git commits as a GitHub app

Installation

Copy and paste the following snippet into your .yml file.

              

- name: GitHub App Commit Action

uses: dsanders11/[email protected]

Learn more about this action in dsanders11/github-app-commit-action

Choose a version

GitHub App Commit Action

GitHub Super-Linter CI

GitHub Action which makes it simple to make verified Git commits as a GitHub app

Usage

Authentication

This action requires a GitHub app installation token. An authentication token for the app can be easily generated in the GitHub actions workflow using electron/github-app-auth-action . The app must have the "Contents" (read and write) permission and be installed on the repository.

Staging Changes

Stage changes for the commit as you normally would, but to commit them use the action instead of running git commit. The changes to commit will be detected automatically.

Updating Existing Ref

If you want to update an existing ref, you should ensure that ref is checked out in the current git checkout (you can use the ref input for actions/checkout). You can force the update using the force input.

Multiple Commits

If you want to make multiple commits one after the other, be sure to run a git pull after using the action so that the working tree is up-to-date before the next commit.

Example

jobs:
  commit-changes:
    name: Commit changes
    runs-on: ubuntu-latest
    steps:
      - name: Generate GitHub App token
        uses: electron/[email protected]
        id: generate-token
        with:
          creds: ${{ secrets.GH_APP_CREDS }}
      - name: Checkout
        id: checkout
        uses: actions/[email protected]
      - name: Stage changes
        run: |
          echo 'Hello World' > hello-world.txt
          git add hello-world.txt
      - name: Commit
        uses: dsanders11/github-app-commit-action@v1
        with:
          message: 'feat: my changes'
          token: ${{ steps.generate-token.outputs.token }}

Inputs

  • fail-on-no-changes - (optional) Whether or not to set action failure if there are no changes to commit (default: true)
  • force - (optional) Whether to force the update or to make sure the update is a fast-forward update when updating an existing ref (default: false)
  • message - (required) The commit message
  • ref - (optional) Git reference to associate the commit with (e.g. main). If it does not exist it will be created. Defaults to the the current checkout ref.
  • token - (required) GitHub App installation access token

Outputs

  • message - The commit message
  • ref - The associated Git reference
  • ref-operation - Which operation was performed on the ref: created or updated. Has no value if there were no changes to commit.
  • sha - SHA for the commit

License

MIT