summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-02-19 13:29:33 +0100
committerGitHub <noreply@github.com>2020-02-19 13:29:33 +0100
commit7c5ce0ac7c8d7ee5aca8e0361cfc28521c8d479c (patch)
tree9a5fb4334a8871977082f36b2f05c020f413efb3
parent7fce47b64f76a4b12e7dde9be44c8f6b15a64a1f (diff)
parente479231b2100d38e85408a9e9205601599879e60 (diff)
Merge pull request #36350 from akien-mga/travis-fix-clang-format-stable
Travis: Fix clang-format on non-master branches
-rwxr-xr-xmisc/travis/clang-format.sh14
1 files changed, 10 insertions, 4 deletions
diff --git a/misc/travis/clang-format.sh b/misc/travis/clang-format.sh
index 097b2a9378..a6585578e1 100755
--- a/misc/travis/clang-format.sh
+++ b/misc/travis/clang-format.sh
@@ -3,11 +3,17 @@
CLANG_FORMAT=clang-format-8
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
- # Check the whole commit range against $TRAVIS_BRANCH, the base merge branch
- # We could use $TRAVIS_COMMIT_RANGE but it doesn't play well with force pushes
- RANGE="$(git rev-parse $TRAVIS_BRANCH) HEAD"
+ # Travis only clones the PR branch and uses its HEAD commit as detached HEAD,
+ # so it's problematic when we want an exact commit range for format checks.
+ # We fetch upstream to ensure that we have the proper references to resolve.
+ # Ideally we would use $TRAVIS_COMMIT_RANGE but it doesn't play well with PR
+ # updates, as it only includes changes since the previous state of the PR.
+ git remote add upstream https://github.com/godotengine/godot \
+ --no-tags -f -t $TRAVIS_BRANCH
+ RANGE="upstream/$TRAVIS_BRANCH HEAD"
else
- # Test only the last commit
+ # Test only the last commit, since $TRAVIS_COMMIT_RANGE wouldn't support
+ # force pushes.
RANGE=HEAD
fi