Compare commits

...

10 commits

Author SHA1 Message Date
Stefan Zweifel
fc84150d7c
Add alternative actions 2026-01-19 19:44:34 +01:00
Stefan Zweifel
df21a760dd
Remove Security Link from config.yml 2026-01-17 08:25:12 +01:00
Stefan Zweifel
e4b712e8e8
Add Security Policy 2026-01-17 08:24:22 +01:00
Stefan Zweifel
6739571eae
Add Note about persist-credentials to README 2026-01-03 08:53:26 +01:00
stefanzweifel
b811de3f2d Update CHANGELOG 2025-12-17 19:26:02 +00:00
dependabot[bot]
04702edda4
Bump actions/checkout from 5 to 6 (#399)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-17 20:23:57 +01:00
Koen van Zuijlen
1e49d5001f
Add skip_push input option (#401)
Co-authored-by: Stefan Zweifel <stefan@stefanzweifel.dev>
2025-12-17 20:23:26 +01:00
Gideon
65c56779c9
docs: fix typo in README.md (#400) 2025-12-03 12:10:40 +01:00
dependabot[bot]
547c1409ce
Bump bats from 1.12.0 to 1.13.0 (#398)
Bumps [bats](https://github.com/bats-core/bats-core) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/bats-core/bats-core/releases)
- [Changelog](https://github.com/bats-core/bats-core/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/bats-core/bats-core/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: bats
  dependency-version: 1.13.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-10 08:08:12 +01:00
stefanzweifel
8fa7f5a3c5 Update CHANGELOG 2025-10-12 14:39:35 +00:00
13 changed files with 86 additions and 13 deletions

View file

@ -5,4 +5,4 @@ contact_links:
about: If you can't get something to work the way you expect, open a question in our discussion forums.
- name: Feature Request
url: https://github.com/stefanzweifel/git-auto-commit-action/discussions/new?category=ideas
about: 'Suggest any ideas you have using our discussion forums.'
about: "Suggest any ideas you have using our discussion forums."

3
.github/SECURITY.md vendored Normal file
View file

@ -0,0 +1,3 @@
# Security Policy

If you discover any security related issues, please email stefan@stefanzweifel.dev instead of using the issue tracker.

View file

@ -16,7 +16,7 @@ jobs:
contents: write

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
with:
ref: ${{ github.head_ref }}


View file

@ -9,7 +9,7 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v5
uses: actions/checkout@v6

- name: Lint Code Base
uses: github/super-linter@v7

View file

@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- name: Install testing dependencies
run: yarn install

View file

@ -16,7 +16,7 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@v5
uses: actions/checkout@v6
with:
ref: master


View file

@ -5,10 +5,41 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [Unreleased](https://github.com/stefanzweifel/git-auto-commit-action/compare/v6.0.1...HEAD)
## [Unreleased](https://github.com/stefanzweifel/git-auto-commit-action/compare/v7.1.0...HEAD)

> TBD

## [v7.1.0](https://github.com/stefanzweifel/git-auto-commit-action/compare/v7.0.0...v7.1.0) - 2025-12-17

### Added

- Add skip_push input option ([#401](https://github.com/stefanzweifel/git-auto-commit-action/pull/401)) [@kvanzuijlen](https://github.com/@kvanzuijlen)

### Changes

- docs: fix typo in README.md ([#400](https://github.com/stefanzweifel/git-auto-commit-action/pull/400)) [@GideonBear](https://github.com/@GideonBear)

### Dependency Updates

- Bump actions/checkout from 5 to 6 ([#399](https://github.com/stefanzweifel/git-auto-commit-action/pull/399)) [@[dependabot[bot]](https://github.com/apps/dependabot)](https://github.com/@[dependabot[bot]](https://github.com/apps/dependabot))
- Bump bats from 1.12.0 to 1.13.0 ([#398](https://github.com/stefanzweifel/git-auto-commit-action/pull/398)) [@[dependabot[bot]](https://github.com/apps/dependabot)](https://github.com/@[dependabot[bot]](https://github.com/apps/dependabot))

## [v7.0.0](https://github.com/stefanzweifel/git-auto-commit-action/compare/v6.0.1...v7.0.0) - 2025-10-12

### Added

- Restore skip_fetch, skip_checkout, create_branch ([#388](https://github.com/stefanzweifel/git-auto-commit-action/pull/388)) [@stefanzweifel](https://github.com/@stefanzweifel)
- Restore Detached State Detection ([#393](https://github.com/stefanzweifel/git-auto-commit-action/pull/393)) [@stefanzweifel](https://github.com/@stefanzweifel)
- Add Support for Tag Messages ([#391](https://github.com/stefanzweifel/git-auto-commit-action/pull/391)) [@EliasBoulharts](https://github.com/@EliasBoulharts)

### Changed

- Run Action on Node 24 ([#389](https://github.com/stefanzweifel/git-auto-commit-action/pull/389)) [@stefanzweifel](https://github.com/@stefanzweifel)

### Dependency Updates

- Bump actions/checkout from 4 to 5 ([#386](https://github.com/stefanzweifel/git-auto-commit-action/pull/386)) [@[dependabot[bot]](https://github.com/apps/dependabot)](https://github.com/@[dependabot[bot]](https://github.com/apps/dependabot))

## [v6.0.1](https://github.com/stefanzweifel/git-auto-commit-action/compare/v6.0.0...v6.0.1) - 2025-06-11

### Fixed

View file

@ -11,6 +11,11 @@ By default, the commit is made in the name of "GitHub Actions" and co-authored b

If you want to learn more how this Action works under the hood, check out [this article](https://michaelheap.com/git-auto-commit/) by Michael Heap.

If your use case is not covered by git-auto-commit, you might want to check out the following alternative Actions:

- [planetscale/ghcommit-action](https://github.com/planetscale/ghcommit-action)
- [EndBug/add-and-commit](https://github.com/EndBug/add-and-commit)

## Usage

Adding git-auto-commit to your Workflow only takes a couple lines of code.
@ -42,6 +47,8 @@ jobs:
- uses: actions/checkout@v5
with:
ref: ${{ github.head_ref }}
# Value already defaults to true, but `persist-credentials` is required to push new commits to the repository.
persist-credentials: true

# Other steps that change files in the repository go here
# …
@ -115,6 +122,9 @@ The following is an extended example with all available options.

# Optional. Skip internal call to `git checkout`
skip_checkout: true
# Optional. Skip internal call to `git push`
skip_push: true

# Optional. Prevents the shell from expanding filenames.
# Details: https://www.gnu.org/software/bash/manual/html_node/Filename-Expansion.html
@ -216,7 +226,7 @@ If this Action doesn't work for your workflow, check out [EndBug/add-and-commit]

### Checkout the correct branch

You must use `action/checkout@v2` or later versions to check out the repository.
You must use `actions/checkout@v2` or later versions to check out the repository.
In non-`push` events, such as `pull_request`, make sure to specify the `ref` to check out:

```yaml
@ -441,7 +451,9 @@ Make sure to [checkout the correct branch](#checkout-the-correct-branch).
If your Workflow can't push the commit to the repository because of authentication issues,
please update your Workflow configuration and usage of [`actions/checkout`](https://github.com/actions/checkout#usage).

Updating the `token` value with a Personal Access Token should fix your issues.
Please note that `persist-credentials` in `actions/checkout` must be set to `true` to push new commits to the repository.

If you still can't push the commit, and you're using branch protection rules or similar features, updating the `token` value with a Personal Access Token should fix your issues.

### git-auto-commit fails to push commit that creates or updates files in `.github/workflows/`


View file

@ -68,6 +68,10 @@ inputs:
description: Skip the call to git-checkout.
required: false
default: false
skip_push:
description: Skip the call to git-push.
required: false
default: false
disable_globbing:
description: Stop the shell from expanding filenames (https://www.gnu.org/software/bash/manual/html_node/Filename-Expansion.html)
default: false

View file

@ -191,6 +191,10 @@ _tag_commit() {
}

_push_to_github() {
if "$INPUT_SKIP_PUSH"; then
_log "debug" "git-push will not be executed.";
return
fi

echo "INPUT_BRANCH value: $INPUT_BRANCH";


8
package-lock.json generated
View file

@ -5,15 +5,15 @@
"packages": {
"": {
"devDependencies": {
"bats": "^1.12.0",
"bats": "^1.13.0",
"bats-assert": "ztombol/bats-assert",
"bats-support": "ztombol/bats-support"
}
},
"node_modules/bats": {
"version": "1.12.0",
"resolved": "https://registry.npmjs.org/bats/-/bats-1.12.0.tgz",
"integrity": "sha512-1HTv2n+fjn3bmY9SNDgmzS6bjoKtVlSK2pIHON5aSA2xaqGkZFoCCWP46/G6jm9zZ7MCi84mD+3Byw4t3KGwBg==",
"version": "1.13.0",
"resolved": "https://registry.npmjs.org/bats/-/bats-1.13.0.tgz",
"integrity": "sha512-giSYKGTOcPZyJDbfbTtzAedLcNWdjCLbXYU3/MwPnjyvDXzu6Dgw8d2M+8jHhZXSmsCMSQqCp+YBsJ603UO4vQ==",
"dev": true,
"license": "MIT",
"bin": {

View file

@ -1,6 +1,6 @@
{
"devDependencies": {
"bats": "^1.12.0",
"bats": "^1.13.0",
"bats-assert": "ztombol/bats-assert",
"bats-support": "ztombol/bats-support"
},

View file

@ -38,6 +38,7 @@ setup() {
export INPUT_SKIP_DIRTY_CHECK=false
export INPUT_SKIP_FETCH=false
export INPUT_SKIP_CHECKOUT=false
export INPUT_SKIP_PUSH=false
export INPUT_DISABLE_GLOBBING=false
export INPUT_CREATE_BRANCH=false
export INPUT_INTERNAL_GIT_BINARY=git
@ -352,6 +353,24 @@ cat_github_output() {
assert_equal $current_sha $remote_sha
}

@test "If SKIP_PUSH is true git-push will not be called" {
touch "${FAKE_LOCAL_REPOSITORY}"/new-file-{1,2,3}.txt

INPUT_SKIP_PUSH=true

run git_auto_commit

assert_success

assert_line "::debug::git-push will not be executed."

# Assert that the sha values are not equal on local and remote
current_sha="$(git rev-parse --verify --short ${FAKE_DEFAULT_BRANCH})"
remote_sha="$(git rev-parse --verify --short origin/${FAKE_DEFAULT_BRANCH})"

refute [assert_equal $current_sha $remote_sha]
}

@test "It can checkout a different branch" {
# Create foo-branch and then immediately switch back to ${FAKE_DEFAULT_BRANCH}
git checkout -b foo