Skip to content

Commit

Permalink
Merge pull request #199 from kenodegard/disambiguate
Browse files Browse the repository at this point in the history
Properly disambiguate between branch or file checkout
  • Loading branch information
stefanzweifel authored Jan 12, 2022
2 parents b244c38 + e3cb9ba commit 5804e42
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 1 deletion.
2 changes: 1 addition & 1 deletion entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ _switch_to_branch() {
else
# Switch to branch from current Workflow run
# shellcheck disable=SC2086
git checkout $INPUT_BRANCH;
git checkout $INPUT_BRANCH --;
fi
}

Expand Down
26 changes: 26 additions & 0 deletions tests/git-auto-commit.bats
Original file line number Diff line number Diff line change
Expand Up @@ -507,3 +507,29 @@ git_auto_commit() {
run git status
assert_output --partial 'nothing to commit, working tree clean'
}

@test "It does not throw an error if branch is checked out with same name as a file or folder in the repo" {

# Add File called dev and commit/push
echo "Create dev file";
cd "${FAKE_LOCAL_REPOSITORY}";
echo this is a file named dev > dev
git add dev
git commit -m 'add file named dev'
git update-ref refs/remotes/origin/master master
git update-ref refs/remotes/origin/dev master

# ---

INPUT_BRANCH=dev

touch "${FAKE_LOCAL_REPOSITORY}"/new-file-{4,5,6}.txt

run git_auto_commit

assert_success

assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::true"
assert_line "::debug::Push commit to remote branch dev"
}

0 comments on commit 5804e42

Please sign in to comment.