Change detection using git "three dot" diff (#35)

* Rework change detection via `git diff`

Previous implementation performed simple diff between two versions. New implementation fetches on demand more commits to have the merge base between two branches. Now it will detect only changes introduced by branch that was pushed, instead of mixing with changes introduced meanwhile on the base branch.
This commit is contained in:
Michal Dorner 2020-09-01 22:47:38 +02:00 committed by GitHub
parent 3f845744aa
commit 81c90ccae8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 383 additions and 256 deletions

View file

@ -17,15 +17,23 @@ inputs:
required: false
filters:
description: 'Path to the configuration file or YAML string with filters definition'
required: false
required: true
list-files:
description: |
Enables listing of files matching the filter:
'none' - Disables listing of matching files (default).
'json' - Matching files paths are serialized as JSON array.
'shell' - Matching files paths are escaped and space-delimited. Output is usable as command line argument list in linux shell.
required: false
required: true
default: none
initial-fetch-depth:
description: |
How many commits are initially fetched from base branch.
If needed, each subsequent fetch doubles the previously requested number of commits
until the merge-base is found or there are no more commits in the history.
This option takes effect only when changes are detected using git against different base branch.
required: false
default: '10'
runs:
using: 'node12'
main: 'dist/index.js'