저는 깃으로부터 저주받았습니다.

저는 깃으로부터 저주받았습니다.

사실 처음부터 깃(Git)으로부터 저주 받은 것은 아니었습니다. 깃은 그저 세계에서 가장 널리 사용되는 것처럼 보이는 형상관리도구 중 하나이고 세계에서 가장 큰 중앙집중식 형상관리도구 서비스인 깃헙이 사용하는 서비스이기도 하며 인터넷에서 만날 수 있는 오픈소스 프로젝트 거의 대부분이 깃을 사용하고 있는 그런 나와 직접 관계가 있지는 않지만 가끔 뭘 좀 하려면 마주치지 않을 수는 없는 그런 존재였습니다. 저를 제외한 전 세계의 모든 사람들이 형상관리도구로 깃을 사용할 때 제가 속한 프로젝트에서는 항상 SVN이나 퍼포스를 사용했는데 종종 인터넷에서 만나는 분들의 글을 보면 퍼포스가 얼마나 미개한지를 설파하고 있었습니다.

오래 전에 도쿠위키를 사용하며 호스팅 환경을 직접 관리할 때가 있었는데 다양한 플러그인을 설치하고 또 몇몇 기능을 직접 수정해서 사용하고 있었기 때문에 최신 업데이트가 돼도 소스를 바로 적용할 수가 없었습니다. 그래서 도쿠위키의 최신 버전을 포크해 온갖 플러그인을 설치한 상태를 그대로 커밋 해 소스 상태를 유지하고 그 상태에 다시 수정사항을 반영해 사용하다가 최신 버전이 나오면 브랜치를 만들어 그안에서 정상 동작할 때까지 머지와 수정을 반복해 멀쩡해지면 메인 브랜치에 반영하곤 했습니다. 회사에서는 퍼포스를, 집에서는 이런 식으로 깃을 사용했는데 서로 빌드의 스냅샷을 바라보는 시각이 달라 회사에서 마인드셋과 집에서 마인드셋을 바꿔야만 서로 다른 상황을 납득하고 적응할 수 있었던 것 같습니다.

이전에 기술적인 배경이 약한 입장에서 기획자가 깃에 대해 불평하기, 익숙한 습관과 깃이란 이야기를 한 적이 있고 또 한번은 언리얼 기반 개발과 깃은 잘 어울리지 않는 것 같음이라는 이야기를 한 적도 있는데 이제 곧 언리얼 엔진 개발을 깃에 기반해 진행한 지 2년이 되어 가는데 지금도 깃은 이전에 비해 전혀 개선되지 않았습니다. 하지만 여전히 인터넷에서 만나는 ‘모든’ 사람들은 자신들에게는 깃이 아무런 문제 없이 동작하며 깃의 문제라기보다는 LFS 문제이거나 윈도우 OS가 문제이거나 커맨드라인을 사용하지 않아 생기는 문제이거나 윈도우 클라이언트의 문제이거나 바이너리 파일이 문제이거나 프로젝트가 너무 무겁거나 표준 깃이 아닌 깃헙의 문제이거나 안티바이러스 소프트웨어 문제이거나 깃의 동작을 잘 이해하지 못한 사용자 문제일 가능성을 이야기하곤 했습니다.