fix(lefthook): run the conflict-marker check on Windows (#3320)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kaushik N
2026-08-16 11:55:30 +02:00
committed by GitHub
co-authored by Claude Opus 5
parent 6c1280dca9
commit 118f3679a3
+12 -5
View File
@@ -9,13 +9,20 @@ pre-commit:
exclude:
- "*.md"
- "*.mdx"
# Single quotes only: on Windows the script is truncated at the first double quote, which
# leaves the shell with an unterminated command and fails the job on every commit.
# grep exits 1 for a clean tree and 2 on error, so the statuses are handled separately —
# an unreadable path must fail the job rather than read as no markers found.
run: |
matches=$(grep -nEI '<{7} |>{7} |^={7}$' {staged_files} || true)
if [ -n "$matches" ]; then
echo "$matches"
echo "Error: merge conflict markers found in staged files"
exit 1
grep -nEI '<{7} |>{7} |^={7}$' {staged_files}
status=$?
if [ $status -eq 1 ]; then
exit 0
elif [ $status -ne 0 ]; then
exit $status
fi
echo 'Error: merge conflict markers found in staged files'
exit 1
- name: lint and format
glob: "*.{js,ts,cjs,mjs,d.cts,d.mts,jsx,tsx,json,jsonc}"
run: pnpm biome check --write --unsafe --no-errors-on-unmatched --files-ignore-unknown=true {staged_files}