Account for merges

This commit is contained in:
Vasil Dininski 2026-03-14 22:46:00 +02:00
parent b67cb594fe
commit 94a1dcece1

View file

@ -6,9 +6,17 @@ set -euo pipefail
git fetch origin main --depth=100
if [ -n "${PREV_SHA:-}" ] && git cat-file -e "${PREV_SHA}^{commit}" 2>/dev/null; then
echo "Generating incremental diff from ${PREV_SHA} to HEAD"
git diff "${PREV_SHA}...HEAD" > pr.diff
echo "incremental=true" >> "$GITHUB_OUTPUT"
OLD_BASE=$(git merge-base origin/main "$PREV_SHA")
NEW_BASE=$(git merge-base origin/main HEAD)
if [ "$OLD_BASE" = "$NEW_BASE" ]; then
echo "Generating incremental diff from ${PREV_SHA} to HEAD"
git diff "${PREV_SHA}..HEAD" > pr.diff
echo "incremental=true" >> "$GITHUB_OUTPUT"
else
echo "PR base changed (merge/rebase from main) — generating full diff"
git diff origin/main...HEAD > pr.diff
echo "incremental=false" >> "$GITHUB_OUTPUT"
fi
else
echo "Generating full diff from origin/main to HEAD"
git diff origin/main...HEAD > pr.diff