Linear(리니어)는 Jira(지라)와 같은 협업툴의 하나 입니다.
새로운 것을 배울 때마다 러닝커브가 굉장히 긴 사람이 사용해본 후기를 짧게 전달하자면 Linear는 생각보다 사용하기 편리한 툴입니다.
가장 마음에 드는 Linear의 특징 중 하나는 gitHub repository와 연동할 수 있다는 점입니다.
자동으로 backlog 관리가 될 뿐만 아니라 backlog를 작성하면 branch명을 자동으로 지정해주기 때문에 작명 관련 고민거리가 하나 줄어듭니다.
협업툴이기 때문에 기능은 다른 것들과 비슷하겠지만 개인적으로 Jira는 Linear에 비해 조금 사용하기 까다롭다는 느낌을 받았습니다. Linear가 조금 더 직관적인 사용이 가능하기 때문에 아직 나에게 꼭 맞는, 편리한 협업툴을 찾지 못했다면 Linear를 추천드리고 싶습니다 :)
최근 새롭게 진행 중인 토이 프로젝트가 있어서 이걸 기준으로 설명하겠습니다 :)
먼저 gitHub에서 repository를 만들어 줍니다.
organization / repository
를 생성 후 Linear에서 workspace를 생성해줍니다.
workspace를 생성하거나 settings 페이지로 가기 위해선 최상단 좌측의 repository 이름 (project-name)을 클릭하면 관련 dialog가 나옵니다.
settings/Workspace/integrations
위 경로로 들어가면 gitHub repository와 연결을 할 수 있습니다.
Enable 버튼을 누르면 아래와 같이 내가 속해 있는 organizations와 개인 계정을 선택할 수 있는 페이지로 이동됩니다. Linear로 작업하고 싶은, 방금 만든 repository가 있는 organization을 선택해주면 연결 완료!
제대로 연결이 됐다면 아래와 같은 화면을 볼 수 있습니다.
connected organizations에 초록불이 들어온다면 잘 연결된 겁니다.
Branch format에서는 branch name을 어떻게 설정할 것인지 정할 수 있습니다.
내가 backlog의 제목에 적은 내용, 담당자 닉네임 포함 여부, Linear에서 제공하는 branch 이름 등 다양한 선택지가 있습니다.
저는 chap-chap에서 identifier-title로 설정했을 때 너무 길어 직접 칠 수 없던 점이 불편했기 때문에 이번에는 identifier을 선택했습니다.
GitHub issues를 클릭하면 github와 linear를 양방향으로 연결할 수 있습니다.
이걸 설정했을 때 git issue에 브랜치 생성 관련 정보가 추가됩니다.
저희는 git issue에서 의견을 공유하고 데일리 스크럼을 작성하고 있기 때문에 이 부분은 비활성화시켰습니다. (default)
gitHub 외에도 정말 많은 tool들과 enable이 가능합니다.
아직 Linear에서 제공하는 정말 기본적인 기능들만 사용하고 있지만 좀 더 익숙해지면
vscode나 discord, figma까지 설치해서 더 개발하기 좋아지는 환경이 구축되는지 확인해보고 싶습니다.
engineering | collaborations | media & design |
github repository와 연결을 하고 난 뒤엔 좌측 사이드바의 your teams/[ project ]/backlog
에서 백로그를 작성하면 됩니다.
우측 + 기호를 누르면 백로그를 추가할 수 있고 sub-issues
를 활용해 하위 issue 생성도 할 수 있습니다. branch는 각각 생성되며 하위 branch의 PR이 완료되었을 때 상태가 done으로 분류됩니다.
`my-issues`에서는 내가 담당하고 있는 issue들만 모아 볼 수 있습니다.
내가 앞으로 해야되는 것들은 뭐가 있는지 확인하기 편리해요.
issue들은 두 가지 방법으로 정렬할 수 있습니다.
horizontal / vertical 취향에 따라 선택하시면 될 것 같습니다 :)
in-progress는 PR을 날린 상태인 issue, done은 merge가 된 issue를 나타냅니다.
backlog 생성 시 중요도를 표시할 수 있으며 project를 만들어 backlog를 프로젝트별로 관리할 수 있습니다.
저는 개발해야할 page들을 기준으로 project를 생성해 담당자를 지정합니다.
각 프로젝트별 진행 정도를 파악할 수 있어 전체적인 스케줄 관리에 용이합니다.
1. create backlog
2. check team's progress status
3. check project's progress status