You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
Verify Changed files
v8.8
Verify that certain files or directories did or did not change during the workflow execution.
- Boolean output indicating the presence of uncommited changes.
- List all files that changed during the workflow execution.
- Restrict change detection to a subset of files.
- Regex pattern matching on a subset of files.
NOTE:
⚠️
This action only detects files that have pending uncommited changes generated during the workflow execution, for running a specific step when a file changes relative to the default branch or previous commit
Detects files that were
Added
,Copied
,Modified
,Unmerged
,Unknown
, had theirType changed
,Unstaged
andRenamed
.For configuring git to handle line endings
...
steps:
- uses: actions/checkout@v2
- name: Change text file
run: |
echo "Modified" > new.txt
- name: Change file in directory
run: |
echo "Changed" > test_directory/new.txt
- name: Verify Changed files
uses: tj-actions/[email protected]
id: verify-changed-files
with:
files: |
new.txt
test_directory
.(py|jpeg)$
\.sql$
^(mynewfile|custom)
- name: Run step only when files change.
if: steps.verify-changed-files.outputs.files_changed == 'true'
run: |
echo "Changed files: ${{ steps.verify-changed-files.outputs.changed_files }}"
# Outputs: "Changed files: new.txt test_directory/new.txt"
Using the contains
function.
...
- name: Verify Changed files
uses: tj-actions/[email protected]
id: verify-changed-files
with:
files: |
new.txt
test_directory
- name: Perform action when test_directory changes
if: contains(steps.verify-changed-files.outputs.changed_files, 'test_directory')
run: |
echo "test_directory has changed."
If you feel generous and want to show some extra appreciation:
Support this project with a ⭐
Input | type | required | default | description |
---|---|---|---|---|
token | string |
true |
${{ github.token }} |
GITHUB_TOKEN or a repo scoped Personal Access Token |
files | string[] OR string |
true |
Check for uncommited changes using only these list of file(s) |
|
autocrlf | string |
true |
input |
Modify the core.autocrlf setting possible values (true, false, input). |
separator | string |
true |
' ' |
Output string separator |
Input | type | example | description |
---|---|---|---|
files_changed | string |
true OR false |
Indicates that there are outstanding changes |
changed_files | string |
example.txt ... |
List of file(s)/directory names that changed during the workflow execution |
- Free software: MIT license
Thanks goes to these wonderful people (emoji key):
Max Kahnt 📖 |
William Killerud 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!