Skip to content

Commit

Permalink
Merge pull request #131 from stefanzweifel/git-fetch-depth
Browse files Browse the repository at this point in the history
Set --depth on git-fetch and make call to git-fetch optional
  • Loading branch information
stefanzweifel authored Dec 15, 2020
2 parents 6576a06 + 292ae30 commit 5b85132
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 2 deletions.
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,10 @@ This is a more extended example with all possible options.
push_options: '--force'

# Optional: Disable dirty check and always try to create a commit and push
skip_dirty_check: true
skip_dirty_check: true

# Optional: Skip internal call to `git fetch`
skip_fetch: true
```
## Example
Expand Down
4 changes: 4 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ inputs:
description: Skip the check if the git repository is dirty and always try to create a commit.
required: false
default: false
skip_fetch:
description: Skip the call to git-fetch.
required: false
default: false

outputs:
changes_detected:
Expand Down
7 changes: 6 additions & 1 deletion entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,12 @@ _switch_to_branch() {
echo "INPUT_BRANCH value: $INPUT_BRANCH";

# Fetch remote to make sure that repo can be switched to the right branch.
git fetch;

if "$INPUT_SKIP_FETCH"; then
echo "::debug::git-fetch has not been executed";
else
git fetch --depth=1;
fi

# Switch to branch from current Workflow run
# shellcheck disable=SC2086
Expand Down
14 changes: 14 additions & 0 deletions tests/git-auto-commit.bats
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ setup() {
export INPUT_TAGGING_MESSAGE=""
export INPUT_PUSH_OPTIONS=""
export INPUT_SKIP_DIRTY_CHECK=false
export INPUT_SKIP_FETCH=false

# Configure Git
if [[ -z $(git config user.name) ]]; then
Expand Down Expand Up @@ -297,3 +298,16 @@ git_auto_commit() {
run git ls-remote --tags --refs
assert_output --partial refs/tags/v2.0.0
}

@test "If SKIP_FETCH is true git-fetch will not be called" {

touch "${FAKE_LOCAL_REPOSITORY}"/new-file-{1,2,3}.txt

INPUT_SKIP_FETCH=true

run git_auto_commit

assert_success

assert_line "::debug::git-fetch has not been executed"
}

0 comments on commit 5b85132

Please sign in to comment.