본문으로 건너뛰기
Git · GitHub 기초집LESSON 22

GitHub Actions 기초와 자동화

난이도입문 → 초급
예상 시간30분
선수지식이전 강의

22강. GitHub Actions 기초와 자동화

1. 이번 강의에서 해결할 문제

내 컴퓨터에서 빌드한 기억만으로는 다른 환경에서 같은 결과가 나는지 보장할 수 없습니다. PR이 열리거나 갱신될 때 깨끗한 환경에서 자동 검사를 실행합니다.

2. 학습 목표

3. 핵심 개념

workflow는 .github/workflows/*.yml 파일이며 event가 실행을 시작합니다. job은 runner에서 실행되고 step이 순서대로 동작합니다. npm ci는 lockfile 그대로 설치해 재현성을 높이고, 기본 권한은 필요한 읽기 수준으로 제한합니다.

4. 단계별 명령어와 예시

파일 경로: C:\dev\git-learning-site\.github\workflows\validate.yml

.github/workflows/validate.yml
name: 문서 검증

on:
pull_request:
branches: [main]

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24
cache: npm
- run: npm ci
- run: npm run build

로컬에서 먼저 같은 핵심 검사를 실행합니다.

PowerShell
Set-Location C:\dev\git-learning-site
npm.cmd ci
npm.cmd run build
git add .github/workflows/validate.yml
git diff --staged
git commit -m "ci: validate site build on pull requests"
git push

5. 명령어가 동작하는 이유

PR 이벤트가 발생하면 GitHub가 격리된 runner를 준비합니다. checkout이 소스를 받고 setup-node가 지정한 Node.js와 npm 캐시를 준비합니다. lockfile을 사용하는 npm ci 후 빌드가 0이 아닌 종료 코드를 내면 job이 실패해 PR에서 확인할 수 있습니다.

6. 자주 하는 실수와 안전한 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

GitHub Actions 기초와 자동화 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1다음 중 “GitHub Actions 기초와 자동화”의 핵심 요약을 실제 상황에 맞게 적용한 것은 무엇인가요?
  2. 문제 2“GitHub Actions 기초와 자동화” 실습 중 ‘pull_request_target에서 외부 코드를 높은 권한으로 실행’ 상황을 발견했습니다. 본문과 일치하는 설명은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

22강. GitHub Actions 기초와 자동화 미완료 상태