๊ฒฝ๋ก ์ฟผ๋ฆฌ ์ ๋ณด
๊ฒฝ๋ก ์ฟผ๋ฆฌ๋ @kind path-problem
์์ฑ์ด ์๋ CodeQL ์ฟผ๋ฆฌ์
๋๋ค. ํ์ค CodeQL ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ด๋ฌํ ์ฌ๋ฌ ํญ๋ชฉ์ ์ฐพ์ ์ ์์ต๋๋ค.
ํ์ค CodeQL ๊ฒฝ๋ก ์ฟผ๋ฆฌ๋ฅผ ์คํํ์ฌ ๋ณด์ ์ทจ์ฝ์ฑ์ ์๋ณํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์๋์ผ๋ก ์ดํด๋ณผ ์ ์์ต๋๋ค. CodeQL์์ ๋ฐ์ดํฐ ํ๋ฆ์ ์ถ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ CodeQL ์ค๋ช ์์ ๋ฐ์ดํฐ ํ๋ฆ ๋ถ์ ์ ๋ณด๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ฐ์ดํฐ ํ๋ฆ ๋ถ์ ๋ฐ ๊ธฐ์กด ์ฟผ๋ฆฌ์ ์ต์ํด์ง๋ฉด CodeQL์์ ๊ณ ์ ํ ๊ฒฝ๋ก ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ค์ ๋จ๊ณ๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ก์ปฌ๋ก VS Code์์ ๊ฒฝ๋ก ์ฟผ๋ฆฌ ์คํ
- VS Code์์ ๊ฒฝ๋ก ์ฟผ๋ฆฌ ์ด๊ธฐ
- ์ฟผ๋ฆฌ๊ฐ ์ด๋ ค ์๋ ์ฐฝ์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋จ์ถ๋ก ํด๋ฆญํ๊ณ CodeQL: ์ ํํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฟผ๋ฆฌ ์คํ์ ์ ํํฉ๋๋ค. ๋๋ VS Code Command Palette์์ ์คํํ ์๋ ์์ต๋๋ค.
- ์ฟผ๋ฆฌ ์คํ์ด ์๋ฃ๋๋ฉด ๋๋กญ๋ค์ด ๋ฉ๋ด
alerts
์๋์ "๊ฒฐ๊ณผ" ๋ณด๊ธฐ์์ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. ๊ฐ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ ์๋ณธ ๋ฐ ์ฑํฌ ๊ฐ์ ์ ๋ณด ํ๋ฆ์ ์ค๋ช ํฉ๋๋ค. - ๊ฒฐ๊ณผ๋ฅผ ํ์ฅํ์ฌ ๋ฐ์ดํฐ๊ฐ ๋ฐ๋ฅด๋ ๊ฐ๋ณ ๋จ๊ณ๋ฅผ ํ์ธํฉ๋๋ค.
- ๊ฐ ๋จ๊ณ๋ฅผ ํด๋ฆญํ์ฌ ์์ค ์ฝ๋์์ ํด๋น ๋จ๊ณ๋ก ์ด๋ํ๊ณ ๋ฌธ์ ๋ฅผ ์ถ๊ฐ๋ก ์กฐ์ฌํฉ๋๋ค.
๋ค์ ๋จ๊ณ
๋๊ท๋ชจ ๊ฒฝ๋ก ์ฟผ๋ฆฌ๋ฅผ ์คํํ ์ค๋น๊ฐ ๋๋ฉด "๋ณํ ๋ถ์ ๋ฆฌํฌ์งํ ๋ฆฌ" ๋ณด๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ GitHub.com์์ ์ต๋ 1,000๊ฐ์ ๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ํด ์ฟผ๋ฆฌ๋ฅผ ์คํํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ค์ค ๋ฆฌํฌ์งํ ๋ฆฌ ๋ณํ ๋ถ์์ ์ฌ์ฉํ์ฌ ๋๊ท๋ชจ CodeQL ์ฟผ๋ฆฌ ์คํ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์ฌ์ฉ์ ๊ณ ์ ์ ๊ฒฝ๋ก ์ฟผ๋ฆฌ์ ์ฌ๋ฐ๋ฅธ ํ์ ๋ฐ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ CodeQL ์ค๋ช ์์ ๊ฒฝ๋ก ์ฟผ๋ฆฌ ๋ง๋ค๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์. CodeQL ์ค๋ช ์์๋ ์ ์๋ณธ ๋ฐ ์ฑํฌ๋ฅผ ์ ์ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ์ ๋ณด๋ฟ๋ง ์๋๋ผ ๋ถ์์ ๋ง๊ฒ ํ์ค CodeQL ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฅํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํ ํ๋ฆฟ ๋ฐ ์์ ๋ ํฌํจ๋์ด ์์ต๋๋ค.