일일커밋을 그만두는 글

April 10, 2017

처음 일일커밋에 대해서 읽은 것이 2015년 5월 즈음입니다. 해봐야지 맘은 먹고 있다가 일도 바쁘고 해서 이래저래 미루다가 시작한건 15년 12월. 성실하게 일일커밋을 하진 않아서 양심에는 좀 찔리지만 대체적으로 지키려고 노력했습니다. 이제 슬슬 시작했다고 말한 적도 없긴 하지만 그만뒀다고 말해도 될 것 같아서 이 글을 정리합니다.

우여곡절이 많은 1년 반이다보니 최장 90일 정도까진 해봤는데, 도저히 100일은 무리였습니다. 정말 백일은 채워보겠다고 비행기 환승 시간에도 커밋하는 등, 별 짓을 다 해봤지만 안될때는 안됩니다. 그런 의미에서 꾸준히 노력하셔서 100일 채우신 분들을 정말 존경하고 있습니다.

본제로 돌아와서 저는 아웃사이더님의 기준에서 조금 유연하게 잡았습니다.

이게 실패의 시작일거라고는, 그 당시의 저에게는 알 수 없었습니다…

얻은 것

이슈 쪼개기

작년부터 생긴 습관이긴 하지만, 메인 브랜치에는 완성되지 않은 기능을 넣지 않다보니, 위에서 세운 기준을 만족시키려면 의도치않게 배포 가능한 단위로 이슈를 잘게 쪼개야하는 상황에 처했습니다. 아직 충분하진 않지만 이런 부분에 대해서 고려할 수 있게 된 점만으로도 나름대로의 성과라고 생각하고 있습니다.

의식적인 리팩토링

일일커밋을 하다보면 할게 없는 날이 분명 생기는데, 이런 날은 기존 코드를 노려보면서 어떻게든 개선 사항을 찾아서 고쳐보려고 시도하게 됩니다. 그리고 대부분의 경우, 눈물을 머금고 로컬 브랜치를 삭제하고.. 주로 명확하지 않은 이름이나, 이유는 알겠지만 지금 짜라면 그렇게 안짤 듯한 2~3년 전의 코드, 의존성 줄이기, 또는 좀 더 많은 테스트라든가.

잃은망한

의도치 않은 치팅

2년 전과는 달리, 깃헙이 기여로 취급하는 행동의 가짓수가 늘어났습니다. 예를 들어 PR에서의 리뷰가 그렇습니다. 그래서 번역같은 간단한 PR을 승인하게 되면 기여가 하나 올라가게 되는데, 이 작업을 새벽 5~6시쯤 해둔 뒤에, 바쁜 하루를 보내고 밤이 되어서 깃헙에 접속하면 잔디가 심어져 있는걸 발견합니다. 그리고 아 뭔가 했군, 하면서 창을 닫는 경우가 가끔 생겼습니다. 물론 할 이슈가 있을 때에는 이런 것과 관계없이 진행하지만 하루, 특히 1~2시간에 끝낼 수 있는 이슈가 없을 때가 그랬습니다.

잔디, 그리고 좀 더 많은 잔디

오늘 무슨 작업을 했는지 가장 쉽고 빠르게 볼 수 있는 지표가 잔디이다보니 자꾸 주목적이었던 의식적으로 매일 개발을 한다라는 점을 잊고 잔디를 채워야 한다는 압박감에 시달리게 되는 자신을 발견했습니다. 어떻게든 잔디 하나 심겠다고, 몸이 안좋아서 이불 속에 웅크려 있는 와중에 두통에 시달리며 코드를 짜기도 했었는데, 지금 생각해보면 그 시간에 잠이나 자는게 나았다고, 이제와서 반성하고 있습니다[..]

부족했던 오픈소스 기여

여기서 말하는 기여란 구체적으로 코드를 개선하거나, 기능을 추가하는 기여를 말합니다. 번역이나 오타야 그때그때 슥슥 작업할 수 있지만, 개인적으로 코드를 직접 만져야할 일이 그렇게 자주 발생하지 않다보니 더욱 그랬습니다. 아무튼 작년에 이러한 PR은 더도 말고 덜도 말고 딱 하나를 넣은 것으로 기억하고 있습니다만, 해당 라이브러리의 업데이트는 실질적으로 중단된 상태. 이제 그 라이브러리 쓰는 것도 아니라서 딱히 불편한 것도 없고, 그냥 방치중입니다.

그래서 그만둡니다

변명을 늘어놓는 느낌이 들지만, 그만둬야지라고 결정한 이유를 정리하면 이렇습니다.

사실 그만두겠다고 마음 먹고 오늘의 할당량, 같은 부분을 의식적으로 생각하지 않게 된게 3주쯤 전부터인데, 그동안 하는걸 보아하니 일일커밋을 하건 말건 딱히 그렇게 하는 작업이 바뀌진 않았습니다. 몸에 체화가 된건지, 그냥 놀고 먹고 있는 기간이라 시간이 남아서 그런건지, 그냥 이름만 일일 커밋이라고 붙이고 있었는지는 알 수 없는 노릇입니다.