토발즈, 커널 관리 SW 논쟁「종지부 찍다」

일반입력 :2005/07/06 17:33

Stephen Shankland

리눅스 창시자 리누스 토발즈가 숱한 논쟁에 휘말린 비트키퍼를 포기하고, 리눅스 커널 프로젝트 관리를 위한 새로운 도구 ‘지트’를 발표했다. 토발즈는 이달 초 프로젝트 관리 시스템인 비트키퍼(BitKeeper) 사용을 중단하고, 이메일 업데이트로 복귀했다. 이 방식은 리눅스 커널 개발에 참여하고 있는 수백만 명의 프로그래머들이 비트키퍼를 사용하기 전에 애용했던 오래된 방식이다. 그러나 지트(Git)로 전환함으로써 리눅스 프로젝트는 업데이트를 제어하고 변화를 추적하는 자동화 메커니즘을 다시 한 번 갖추게 됐다. 토발즈는 지난 2002년 비트무버(BitMover)사가 개발해 판매하던 소프트웨어인 비트키퍼를 채용했다. 그는 비트키퍼가 리눅스 개발자들의 생산성을 향상시켜 줄 것이라며 칭찬을 아끼지 않았지만 얼마 후 독점적 소프트웨어에는 의존할 수 없다는 반대에 부딪혔다. 그러나 올해 들어 이보다 더 큰 반발이 전혀 예상하지 못했던 곳에서 터져 나왔다. 비트무버 설립자 래리 맥보이가 비트키퍼를 복사하려는 오픈소스 커뮤니티에 대해 불만을 터뜨렸는데 이는 앤드류 트리젤이라는 개발자가 소스풀러(SourcePuller)라는 비트키퍼 호환 프로젝트를 추진했기 때문이다. 트리젤은 현재 토발즈와 함께 OSDL(Open Source Development Labs)에서 근무중이다. 아이디어만 같고 호환성은 포기토발즈는 20일 인터뷰에서 지트는 비트키퍼와 호환되지 않는다고 밝혔다. 이는 새로운 시스템으로 변환하는 작업이 더욱 어려워진다는 것을 의미하지만 맥보이와 충돌을 피할 수 있는 거의 유일한 방법이었다. 토발즈는 이메일을 통해 “작업 속도를 높이기 위해 무언가가 필요했다”며, “구현하려면 많을 일을 해야 하지만 리눅스 커널 개발에 충분한 시스템을 만들 수 있다고 확신했다. 그리고 기존 SCM(Source Code Management tools)보다 더 빠르게 만들어서 리눅스 커널처럼 규모가 크고 분산된 프로젝트에 채택될 수 있게 할 자신이 있었다”라고 전했다. 지트는 확실히 비트키퍼의 산물이다. 두 시스템 모두 단일한 중앙 데이터베이스에서 소프트웨어를 수용하지 않는 것이 그 증거다. 토발즈는 “비트키퍼는 분산된 개발 작업을 진행할 수 있는 방법을 제시했고, 이 작업은 매우 성공적이었다. 지트가 비트키퍼와 호환되지는 않지만 바탕이 되는 아이디어는 같다”라고 설명했다. 토발즈는 소스풀러의 경우 분산 개발 작업을 테스트하기에는 충분하지 않았다고 덧붙였다. “소스풀러는 비트키퍼의 모든 기능을 구현하지 못했다. 단지 결과만을 보여줄 뿐이다. 소스풀러와 비트키퍼를 함께 사용할 수 없다면 결국 쓸모없는 것이다”라고 말했다. 리눅스 커널만을 위한 인하우스 도구지트는 리눅스와 마찬가지로 GPL로 관리되고 있고, 프로그래머 10명 중 5명은 지트로 옮길 것으로 보인다. 그러나 토발즈는 지트가 리눅스 커널 이외의 프로젝트에서도 광범위하게 이용될 것으로는 기대하지 않는다. 토발즈는 “지트는 아직 불완전하기 때문에 당장은 사용할 때의 어려움이 이득보다 훨씬 많다. 커널 개발 프로세스의 요구 사항은 어느 정도 만족시키겠지만 다른 프로젝트에서는 채택하기 힘들 것”이라며, “커널 개발자들조차도 지트가 비트키퍼에 비해 그리 만족스럽지는 않을 것”이라고 언급했다. 맥보이는 “지트는 리누스가 해결하고자 하는 문제들에는 좋은 도구지만 충분히 성숙된 소스 코드 관리 시스템은 아니다”라고 말하며 “토발즈의 작업은 수많은 패치를 수용하는 것이고, 이 작업을 위해 지트를 최적화했다”라고 언급했다. 맥보이는 “리누스가 하고 있는 작업은 자신이 필요로 하는 기능의 5%에 집중하는 것이다. 리누스의 입장에 있다면 지트를 진정으로 좋아하게 될 것”이라고 말했다. “하지만 SCM 시스템에 관한 경험을 갖고 있는 사용자라면 지트는 기대에 미치지 못할 것이다”라고 덧붙였다. 맥보이에 따르면 두 가지 도구의 차이점 중 하나는 지트의 경우 파일명을 변경할 수 없기 때문에 하나를 지우고, 지운 파일을 새로운 파일명으로 어딘가에 만들어야 한다는 점이다. 또 지트는 공간을 효율적으로 제어하지 못해 1MB의 파일에서 글자 하나만 변경해도 2MB의 파일이 생성된다. 반면 비트키퍼에서는 1바이트밖에 추가되지 않는다. 토발즈는 “지트에 자부심을 느끼지만 직접 부딪쳐보면 확실히 부족한 부분이 있다”며 지트에 단점이 있음을 인정했다. @