@@ -13,13 +13,18 @@ jobs:
1313
1414 - name : Check for 1. missing end line breaks and 2. control characters in filenames
1515 run : |
16- files=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }})
16+ # ๋ฐ์ดํ๋ฅผ ์ ๊ฑฐํ๊ณ ํ์ผ ๋ชฉ๋ก ๊ฐ์ ธ์ค๊ธฐ
17+ files=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | tr -d '"')
18+ echo "๋ณ๊ฒฝ๋ ํ์ผ ๋ชฉ๋ก:"
19+ echo "$files"
20+
1721 success=true
1822
1923 # ์ค๋ฐ๊ฟ ์ฒดํฌ
2024 echo "## ์ค๋ฐ๊ฟ ๋๋ฝ ํ์ผ" >> $GITHUB_STEP_SUMMARY
2125 for file in $files; do
2226 if [ -s "$file" ] && [ "$(tail -c 1 $file | wc -l)" -eq 0 ]; then
27+ echo "๋ฐ๊ฒฌ๋ ์ค๋ฐ๊ฟ ๋๋ฝ: $file"
2328 echo "- $file" >> $GITHUB_STEP_SUMMARY
2429 success=false
2530 fi
@@ -28,16 +33,37 @@ jobs:
2833 # ์ ์ด๋ฌธ์ ์ฒดํฌ
2934 echo -e "\n## ์ ์ด๋ฌธ์๊ฐ ํฌํจ๋ ํ์ผ๋ช
" >> $GITHUB_STEP_SUMMARY
3035 for file in $files; do
31- if [ -e "$file" ]; then # ํ์ผ์ด ์กด์ฌํ๋ ๊ฒฝ์ฐ๋ง ์ฒดํฌ
32- clean_name=$(printf '%q' "$file")
33- if [ "$file" != "$clean_name" ]; then
34- echo "- $file" >> $GITHUB_STEP_SUMMARY
35- success=false
36- fi
36+ # basename์ผ๋ก ํ์ผ๋ช
๋ง ์ถ์ถํ๊ณ ๋ฐ์ดํ ์ ๊ฑฐ
37+ filename=$(basename "$file" | tr -d '"')
38+
39+ # ๋ฐฑ์ฌ๋์๋ก ์์ํ๋ ์ ์ด๋ฌธ์๋ค ์ฒดํฌ (\b, \n, \r, \t ๋ฑ)
40+ if printf '%q' "$filename" | grep -q '\\[bnrtfv]'; then
41+ echo "- $file (์ ์ด๋ฌธ์ ํฌํจ)" >> $GITHUB_STEP_SUMMARY
42+ success=false
43+ fi
44+
45+ # ์ผ๋ฐ์ ์ธ ์ ์ด๋ฌธ์๋ค ์ฒดํฌ (0x00-0x1F, 0x7F)
46+ if echo -n "$filename" | LC_ALL=C grep -q '[[:cntrl:]]'; then
47+ echo "- $file (์ ์ด๋ฌธ์ ํฌํจ)" >> $GITHUB_STEP_SUMMARY
48+ success=false
49+ fi
50+
51+ # ํน์ ์ ์ด๋ฌธ์๋ค ์ฒดํฌ
52+ if echo -n "$filename" | grep -q $'[\x00-\x1F\x7F]'; then
53+ echo "- $file (์ ์ด๋ฌธ์ ํฌํจ)" >> $GITHUB_STEP_SUMMARY
54+ success=false
55+ fi
56+
57+ # ์ด์ค์ผ์ดํ ์ํ์ค ์ฒดํฌ
58+ if [[ "$filename" =~ (\\[0-7]{1,3}|\\x[0-9a-fA-F]{1,2}) ]]; then
59+ echo "- $file (์ ์ด๋ฌธ์ ํฌํจ)" >> $GITHUB_STEP_SUMMARY
60+ success=false
3761 fi
3862 done
3963
4064 if [ "$success" = false ]; then
4165 echo -e "\n:warning: ์ ๋ฌธ์ ๋ค์ ํด๊ฒฐํด ์ฃผ์ธ์:" >> $GITHUB_STEP_SUMMARY
66+ echo "1. ํ์ผ ๋์ ๋๋ฝ๋ ์ค๋ฐ๊ฟ์ ์ถ๊ฐํด ์ฃผ์ธ์." >> $GITHUB_STEP_SUMMARY
67+ echo "2. ํ์ผ๋ช
์์ ์ ์ด๋ฌธ์๋ฅผ ์ ๊ฑฐํด ์ฃผ์ธ์." >> $GITHUB_STEP_SUMMARY
4268 exit 1
43- fi
69+ fi
0 commit comments