GitHub Action to commit & push changes made in workflows :octocat:
| .github/workflows | ||
| reports | ||
| action.yml | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| README.md | ||
| renovate.json | ||
Git Commit & Push action
GitHub Action to commit & push changes made in workflows :octocat:
Note: This action is supported on all runners operating systems (ubuntu, macos, windows)
📚 Usage
⚠️ Requirements
- The
actions/checkoutis mandatory to use this action, as it will be necessary to access the repository files.
1️⃣ Minimal: Commit and Push with default parameters
steps:
- uses: actions/checkout@v4
# [...] --> steps with actions or commands updating repository files
- uses: GuillaumeFalourd/git-commit-push@v1.3
2️⃣ Full: Commit and Push with customized parameters
steps:
- uses: actions/checkout@v4
# [...] --> steps with actions or commands updating repository files
- uses: GuillaumeFalourd/git-commit-push@v1.3
with:
email: ${{ github.actor }}@users.noreply.github.com
name: ${{ github.actor }}
commit_message: your_message
target_branch: target_branch_name
files: file1 file2 directory1 directory2/file3
remote_repository: https://github.com/owner/another_repository
access_token: ${{ github.token }}
force: true
empty: true
tags: true
Known Issue
When pushing to the same repository, the workflow may return the following error using the action:
remote: Permission to <owner>/<repository>.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/<owner>/<repository>/': The requested URL returned error: 403
This can be resolved by adding persist-credentials: false and fetch-depth: 0 to the workflow configurations when using the actions/checkout.
- uses: actions/checkout@v4
with:
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of the personal access token.
fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository.
- uses: GuillaumeFalourd/git-commit-push@v1.3
with:
email: ${{ github.actor }}@users.noreply.github.com
name: ${{ github.actor }}
commit_message: your_message
target_branch: target_branch_name
files: file1 file2 directory1 directory2/file3
remote_repository: https://github.com/owner/another_repository
access_token: ${{ github.token }}
force: true
empty: true
tags: true
▶️ Action Inputs
| Field | Mandatory | Default Value | Observation |
|---|---|---|---|
| NO | ${{ github.actor }}@users.noreply.github.com |
Github user email e.g: octocat@github.com |
|
| name | NO | ${{ github.actor }} |
Github username e.g: octocat |
| commit_message | NO | Commit performed using Push and Commit action |
Commit message |
| target_branch | NO | ${{ github.ref }} |
Branch to push the changes back |
| files | NO | . |
Files to add separated by space e.g: file1 file2 directory1 directory2/file3 |
| remote_repository | NO | origin |
Repository url to push the code |
| access_token | NO | ${{ github.token }} |
Personal Access Token is necessary if push to another repository |
| force | NO | 0 |
Whether to perform force push |
| empty | NO | 0 |
Whether to allow empty commit |
| tags | NO | 0 |
Whether to use --tags |
🤝 Contributing
🏅 Licensed
☞ This repository uses the Apache License 2.0