VS Code에서 Jira 다루기 그런데 이제 타임 트래킹을 곁들인

황토소금·2024년 9월 8일

TIL

목록 보기
30/49

들어가며

지금까지 내가 일을 하면서 겪었던 문제는 다음과 같다.

  1. 작업 중간 중간 진행 상황을 Jira에 반영해야 한다.
  2. 작업을 하던 중 작업이 예상 소요시간보다 길어지거나 새로운 수정 사항이 생기는 등 문제가 생기면 Jira에 해당 사항을 업데이트해야 한다.
  3. 하지만 VS Code에서 작업을 하다가 크롬을 켜고 Jira에 들어가서 이슈를 열고 내용을 수정하는 건 너무나 귀찮은 일이었다.
  4. 그래서 사용한 시간도 입력을 하는 걸 까먹거나 미루게 된다.

그리고 이로인해 부가적인 문제도 생겼다.

  1. 이슈를 바로바로 수정하지 않아서 이슈를 구분하기 애매해지고 그러다보면 나중에 기존에 있던 이슈에 새 변경 사항을 우겨 넣어서 이슈 하나가 커진다.
  2. 이슈 하나가 커지기 때문에 하나의 이슈만 가지고 며칠을 붙잡고 있게 된다.
  3. 이슈가 원래 가지고 있던 목표가 사라지고 애매해진다.
  4. 그러다보니 해당 이슈에 사용한 시간도 언제까지 넣어야하는지 애매해진다.
  5. 시간을 입력하지 않은 때도 있어서 현재 진척도가 얼마나 되는지 제대로 파악되지 않는다.

어느덧 프로젝트도 개발을 시작한지 두달이 넘어가고 어느정도 결과물이 나오고 여름 휴가도 조금 다녀오고 하다보니 게을러진 마음에 위와 같은 문제를 겪으면서도 잘 해결하려고 하는 마음이 생기지 않은 것 같다.

그러다가!! 멘토님이 VS Code에서 Jira extension이 있다는 것을 알려주셨고, 새로운 도구를 좋아하는 나로서 '와 대박' '써보고 싶다' 라는 생각과 함께 문제를 해결해보려고 한다. 위와 같은 문제는 다른 팀원들 보다는 내가 심하게 겪고 있던 거라 팀원들에게 미안한 마음이다.

VS Code extension: Jira and Bitbucket (Atlassian Labs)

이 VS Code extension은 VS Code에서 Jira를 사용할 수 있게 해주는 툴이다. 더이상 Jira 이슈를 수정하기 위해 크롬을 켜고 들어가지 않아도 된다는게 너무 좋다. 작은 동작들이지만 생각보다 Jira에 한번 다녀오면 생각의 흐름이 잘 끊겼고 Jira에 들어가는걸 자꾸 미뤄 작업 기록을 하기 힘들었는데 너무 잘 된 일이다.

주요 기능들을 보면 다음과 같다.

코드 내에서 Jira 이슈 생성

VS Code에서 TODO, BUG, FIXME 같은 키워드를 사용해 코드에 주석을 달면, 그걸 기반으로 바로 Jira 이슈를 생성할 수 있음. 예를 들어, // TODO: 수정 필요 같은 주석을 달면, 그 주석이 자동으로 Jira 이슈 제목으로 등록됨. 주석을 달면 상단에 ‘이슈 생성’ 버튼이 뜨는데, 클릭하면 Jira 이슈 생성 양식이 뜨고, 작성 후 제출하면 끝남. 생성된 이슈 정보는 원래 주석 자리에 자동으로 댓글 형태로 표시됨.


컨텍스트 메뉴에서 이슈 생성

코드에서 이슈를 생성하고 싶으면, 문제 있는 줄을 선택하고 마우스 오른쪽 버튼을 누르면 됨. ‘Create New Jira issue’를 선택하면 그 줄이 자동으로 이슈 설명에 포함되면서 Jira 이슈 생성 화면이 뜸. Bitbucket을 사용 중이라면 선택한 코드 줄에 대한 링크도 자동으로 추가됨. GitHub 같은 다른 시스템을 쓰고 있으면 상대 경로와 줄 번호가 표시됨.


명령 팔레트에서 이슈 생성

코드랑 상관없이 그냥 Jira 이슈를 생성하고 싶다면, 명령 팔레트를 열어서(단축키: Ctrl + Shift + P) ‘새 Jira 이슈 만들기’ 명령을 검색하면 됨. 양식을 작성하고 제출하면 이슈가 생성됨.

Jira 이슈 보기 및 수정

생성된 Jira 이슈는 탐색 트리에서 클릭하거나, 명령 팔레트를 통해 이슈 키를 입력해 빠르게 열어볼 수 있음. 코드 주석에 있는 이슈 키에 마우스를 올리면 이슈에 대한 간단한 정보를 미리 볼 수 있는 모달이 뜸. 여기서 바로 ‘문제 보기 열기’를 눌러 전체 이슈 세부 정보를 확인할 수 있음.
탐색트리에서 이슈 보기
팔레트에서 이슈 열기

이슈로 작업 시작

Jira와 Bitbucket이 연동되어 있다면, 해당 이슈에서 ‘작업 시작’을 누르면 새로운 브랜치를 생성하고, 이슈를 진행 중 상태로 전환해줌. 이때 브랜치 이름에는 자동으로 이슈 키가 포함되며, 로컬에 체크아웃된 후 원격 브랜치와 연결됨.

하지만 무척 아쉬운 점은 타임 트래킹 기능은 없다는 것이다. 세상에서 제일 귀찮은 일이 내가 어디에 얼만큼 시간을 썼는지 기록하는 건데...

자세한 내용은 여기를 참고하세요.

VS Code extension: WakaTime

이전까지 나는 Session이라는 뽀모도로 타이머 서비스를 통해서 통해서프로젝트에 쓴 시간을 기록하고 있었다. 하지만 이것도 내가 작업을 시작할 때 켜야한다는 점, 뽀모도로 대로 25분 집중, 5분 휴식을 가져갈 수 없는 상황이 많은데 그럴 때마다 일일히 시간을 멈추고 다시 시작하고 하는 과정이 불편했다.

Jira를 VS Code에서 접근하는 김에 시간 관리도 VS Code에서 할 수 있게 하는 extension을 찾아보았다. 어떤 Git 브랜치에서 언제부터 얼마나 시간을 썼는지 트래킹하는 도구가 있었으면 하고 찾아보았다. 그리고 가능하다면 Jira와 연동까지

기능상 제일 좋아보였던건 Jira Plugin이었다.
사진처럼 내가 어떤 이슈에 대해 작업할 때 시간을 잴 수 있고 시간을 멈추면 바로 작업 로그를 남길 수 있었다. 하지만!!
마지막 업데이트가 2022년이고 버전이 0.22 정도에 머물러 있고 실제로 써보니까 제대로 동작하지 않아서 슬펐다.

그래서 대안으로 Jira와 연동은 안되지만 어떤 Git 브랜치에서 언제부터 얼마나 시간을 썼는지 트래킹해주는 extension을 찾았다.

바로바로 WakaTime이라는 툴이다.
VS Code뿐만 아니라 다른 IDE도 지원하는 것 같다.

이 툴은 이제 켜두기만 하면 내가 어떤 프로젝트 폴더에서 어떤 Git 브랜치에서 어떤 파일에 얼마나 시간을 썼는지 트래킹하고 시각화해준다.
솔직히 스샷처럼 시각화해주긴하는데 한 컴포넌트 크기가 너무 크다던가 마음에 안드는 부분이 있긴하다.
마음에 안드는 점을 더 적자면

  1. VS Code의 하단 메뉴에서 일한 시간을 보여주는데 총 합한 시간만 보여준다.
  2. 그마저도 사이트에 들어가서 보는 것과 시간이 다르다. 반영이 느리다.
  3. 제대로 정리된 정보를 보려면 결국 또 사이트에 들어가야하긴 한다. 그래도 클릭 한번으로 들어갈 수 있어서 참을만 하다.
  4. 내 프로젝트의 정보를 수집한다는 점. WakaTime의 경우 지속적으로 내 활동 정보를 수집하고 해당 정보를 자기네 서버로 보낸다. 그리고 이때 폴더별, 브랜치별, 파일별로 쓴 시간을 기록하기 위해 파일 이름을 수집한다고 한다. 지금 우리 프로젝트는 퍼블릭이기도 하고 cursor도 쓰고 있는 마당에 파일명을 수집하는게 큰 일은 아니지만 나중에 회사에 간다면 보안상 문제로 이 툴을 쓰지 못할 것 같아서 아쉽다.
    자기들은 오픈소스라서 커뮤니티가 지켜보고 있으니 믿어달라고 한다.

안좋은 점만 쓸 순 없으니 좋은 점은

  1. 프로젝트 폴더별, 브랜치별, 파일별로 시간을 트래킹해줘서 편하다.
  2. Jira 이슈와 브랜치명이 같기 때문에 헷갈일 일이 없어서 나중에 시간 기록하기 편하다. 작업로그를 기록하는건 여전히 나라서 조금 귀찮긴 하다.
  3. 그래도 보안이 신경쓰인다면 파일이나 폴더를 지정해서 설정으로 접근을 막을 수 있다고 한다. 문서

적고 나니 아쉬운 점만 한가득이라서 이런 프로그램이 있다면 좋겠다 하고 생각해보았다.

  1. WakaTime처럼 일단 프로젝트 폴더별, 브랜치별, 파일별로 시간을 트래킹
  2. 해당 사항이 VS Code 왼쪽 메뉴든 하단 메뉴든 어디에서라도 간략하게 보일 것
  3. 커밋 내용을 바탕으로 각 시간마다 내가 어떤 작업을 했는지 간단히 정리
  4. 쓴 시간과 커밋 내용을 바탕으로 Jira에 작업 로그 자동으로 기록

결론

툴을 쓰는 법을 다 파악했으니 VS Code에서 좀 더 편하게 Jira를 수정하고 시간도 트래킹해보려고 한다. 더 편해졌으니 게으름은 덜 부리고 이슈 상황 잘 업데이트하고 작업 관리 잘 해보겠다!

profile
안녕하세요, 반갑습니다.

0개의 댓글