🌿 중급 개발도구
이슈(Issue)가 뭔가요?
쉽게 이해하기
아파트 관리사무소 게시판에 '엘리베이터 고장났어요', '놀이터에 그네 설치해주세요' 같은 민원을 올리는 것처럼, 프로젝트에서 발견한 문제나 개선 아이디어를 올리는 공간이에요.
핵심 정리
GitHub에서 버그 리포트, 기능 요청, 질문 등을 기록하고 추적하는 게시판 같은 기능이에요.
자세히 알아보기
Issue는 GitHub 프로젝트에서 작업할 내용을 기록하고 논의하는 도구예요. 버그를 발견했을 때, 새 기능을 제안할 때, 질문이 있을 때 Issue를 생성해요. 각 Issue는 고유 번호가 부여되고, 댓글로 토론하고, 담당자를 지정하고, 라벨로 분류할 수 있어요.
실무에서는 모든 작업이 Issue에서 시작돼요. '로그인 버튼 클릭 시 에러 발생'이라는 Issue를 만들고, 개발자가 해결하면 'Fixed in #123' 같은 메시지와 함께 커밋해요. #123은 Issue 번호인데, 이렇게 쓰면 커밋과 Issue가 자동으로 연결돼서 나중에 '이 버그가 언제 어떻게 고쳐졌지?' 추적하기 쉬워요.
Issue에는 라벨을 붙일 수 있어요. 'bug', 'feature', 'documentation' 같은 라벨로 분류하면 한눈에 어떤 종류의 작업인지 알 수 있죠. 마일스톤 기능으로 'v2.0 릴리스'처럼 묶어서 관리할 수도 있어요.
오픈소스 프로젝트에서는 Issue가 소통 창구예요. 사용자가 버그를 신고하거나 기능을 제안하면, 유지보수자가 검토하고 논의한 뒤 Pull Request로 이어지죠. 좋은 Issue는 문제를 명확히 설명하고, 재현 방법을 알려주고, 환경 정보(브라우저, OS 등)를 포함해요.