mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-05-10 20:05:50 +02:00
Improve fixup commits script
This script is failing currently on https://github.com/jesseduffield/lazygit/pull/3631 because that fork's master branch is 300 commits behind our own, but the feature branch is up to date. The thing is, we don't actually need to involve the master branch. All we care about is the feature branch's own commits, so this commit simply fetches those commits and checks them.
This commit is contained in:
parent
7679b109cb
commit
addfa2f961
2 changed files with 5 additions and 20 deletions
8
.github/workflows/ci.yml
vendored
8
.github/workflows/ci.yml
vendored
|
@ -225,8 +225,8 @@ jobs:
|
||||||
if: github.ref != 'refs/heads/master'
|
if: github.ref != 'refs/heads/master'
|
||||||
steps:
|
steps:
|
||||||
# See https://github.com/actions/checkout/issues/552#issuecomment-1167086216
|
# See https://github.com/actions/checkout/issues/552#issuecomment-1167086216
|
||||||
- name: "PR commits + 1"
|
- name: "PR commits"
|
||||||
run: echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} + 1 ))" >> "${GITHUB_ENV}"
|
run: echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} ))" >> "${GITHUB_ENV}"
|
||||||
|
|
||||||
- name: "Checkout PR branch and all PR commits"
|
- name: "Checkout PR branch and all PR commits"
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
@ -235,10 +235,6 @@ jobs:
|
||||||
ref: ${{ github.event.pull_request.head.ref }}
|
ref: ${{ github.event.pull_request.head.ref }}
|
||||||
fetch-depth: ${{ env.PR_FETCH_DEPTH }}
|
fetch-depth: ${{ env.PR_FETCH_DEPTH }}
|
||||||
|
|
||||||
- name: "Fetch the other branch with enough history for a common merge-base commit"
|
|
||||||
run: |
|
|
||||||
git fetch origin ${{ github.event.pull_request.base.ref }}
|
|
||||||
|
|
||||||
- name: Check for fixups
|
- name: Check for fixups
|
||||||
run: |
|
run: |
|
||||||
./scripts/check_for_fixups.sh ${{ github.event.pull_request.base.ref }}
|
./scripts/check_for_fixups.sh ${{ github.event.pull_request.base.ref }}
|
||||||
|
|
|
@ -1,19 +1,8 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
base_ref=$1
|
# We will have only done a shallow clone, so the git log will consist only of
|
||||||
|
# commits on the current PR
|
||||||
# Determine the base commit
|
commits=$(git log --grep='^fixup!' --grep='^squash!' --grep='^amend!' --grep='^[^\n]*WIP' --grep='^[^\n]*DROPME' --format="%h %s")
|
||||||
base_commit=$(git merge-base HEAD origin/"$base_ref")
|
|
||||||
|
|
||||||
# Check if base_commit is set correctly
|
|
||||||
if [ -z "$base_commit" ]; then
|
|
||||||
echo "Failed to determine base commit."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
echo "Base commit: $base_commit"
|
|
||||||
|
|
||||||
# Get commits with "fixup!" in the message from base_commit to HEAD
|
|
||||||
commits=$(git log -i -E --grep '^fixup!' --grep '^squash!' --grep '^amend!' --grep '^[^\n]*WIP' --grep '^[^\n]*DROPME' --format="%h %s" "$base_commit..HEAD")
|
|
||||||
|
|
||||||
if [ -z "$commits" ]; then
|
if [ -z "$commits" ]; then
|
||||||
echo "No fixup commits found."
|
echo "No fixup commits found."
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue