체크리스트란?
마크다운 체크리스트(할 일 목록, task list)는 - [ ]와 - [x] 문법으로 만드는 체크박스 목록입니다. 일반 목록처럼 보이지만 각 항목 앞에 체크박스가 생겨서, 할 일을 관리하거나 작업 진행 상황을 한눈에 보여줄 때 매우 유용합니다.
- [ ] 아직 안 한 일
- [x] 완료한 일
- [ ] 진행 중인 작업
대괄호 사이가 공백이면 빈 체크박스, 그 안에 x를 넣으면 체크된 상태로 렌더링됩니다. 대소문자 구분 없이 X도 동작합니다.
어디서 쓸 수 있나
체크리스트는 GitHub와 GitLab의 이슈·PR에서 가장 많이 쓰입니다. GitHub에서는 체크박스를 마우스로 직접 클릭해 상태를 바꿀 수 있고, 전체 항목 중 몇 개가 완료됐는지 진행률이 자동으로 표시됩니다. 노션, 옵시디언, Slack(일부) 등에서도 지원합니다.
중첩 체크리스트
들여쓰기(공백 2칸)를 하면 하위 항목을 만들 수 있습니다. 큰 작업을 세부 단계로 쪼갤 때 좋습니다.
- [ ] 배포 준비
- [x] 테스트 통과 확인
- [x] 버전 태그 생성
- [ ] 릴리스 노트 작성
실전 활용 예시
- PR 체크리스트: "테스트 추가", "문서 갱신", "셀프 리뷰" 같은 항목을 템플릿으로 만들어두면 빠뜨리는 일이 줄어듭니다.
- 회의 안건: 논의할 항목을 체크리스트로 적고, 처리된 안건을 체크하면서 진행합니다.
- 학습 로드맵: 공부할 주제를 나열하고 끝낸 것부터 체크하면 성취감이 생깁니다.
- 출시 점검표: 배포 전 확인 사항을 매번 같은 목록으로 점검합니다.
GitHub에서의 강력한 기능
GitHub의 이슈·PR·댓글·디스커션에서는 체크박스를 마우스로 직접 클릭해 켜고 끌 수 있고, 클릭하면 원본 마크다운의 [ ]가 [x]로 실제로 수정됩니다. 또한 항목 중 몇 개가 완료됐는지 진행률이 자동으로 표시되고, 목록 항목을 드래그해 순서를 바꾸거나 항목 하나를 별도 이슈로 분리할 수도 있습니다.
다만 README 같은 일반 마크다운 파일에서는 체크박스가 보이기는 해도 클릭 토글은 지원되지 않을 수 있어, 이때는 파일을 직접 수정해 상태를 바꿉니다.
체크 상태는 어디에 저장될까
체크 여부는 별도 데이터가 아니라 마크다운 텍스트 그 자체([ ] 또는 [x])에 저장됩니다. 즉 다른 곳으로 옮길 때 텍스트만 복사하면 상태가 그대로 따라옵니다. 데이터베이스 없이 텍스트만으로 상태가 보존되는 것이 마크다운 체크리스트의 장점입니다.
주의할 점
체크리스트는 GitHub Flavored Markdown(GFM) 확장 문법입니다. 표준 마크다운만 지원하는 일부 도구에서는 그냥 대괄호가 그대로 보일 수 있습니다. 이지 마크다운 에디터에서는 체크리스트를 바로 입력하고 미리보기로 확인할 수 있으니, 직접 만들어보면서 익혀보세요.