Emacs, 깃(Git)으로의 전환: 기술적 선택과 커뮤니티의 갈등

by DD
3주 전
조회수 10

2008년, Emacs는 CVS에서 Bazaar로의 전환을 시도했으나, 성능 문제(Performance Issues)로 인해 개발자들의 불만이 제기됨

리처드 스톨만(Richard Stallman)은 GNU 프로젝트의 철학에 따라 Bazaar를 고수했으나, Bazaar 개발 중단(Bazaar Development Stalled)으로 인해 깃(Git)으로의 전환 요구가 거세짐

2013년, ELPA 브랜치를 깃(Git)으로 이전하면서 깃(Git) 사용의 필요성이 대두되었고, 2014년 깃(Git)으로의 전면 전환이 결정됨

깃(Git) 전환 후, 개발자들은 새로운 VCS(Version Control System)에 적응(Adaptation)하는 과정에서 어려움을 겪었으며, 기술적 선택의 중요성이 부각됨

Bazaar의 기술적 한계와 성능 문제

2008년, Emacs 개발자들은 Bazaar의 느린 속도에 대해 강한 불만을 제기했다. 특히, `bzr log` 명령어가 시작하는 데 1분 이상 소요되는 등 성능 저하(Performance Degradation)가 심각했다. 깃(Git)의 경우, 동일한 명령어가 거의 즉각적으로 실행되는 것과 비교하여, Bazaar의 기술적 한계가 명확히 드러났다. 이러한 성능 문제는 개발 생산성을 저해하는 주요 원인으로 작용했다.

이념과 실용성의 충돌: GNU 프로젝트의 선택

리처드 스톨만(Richard Stallman)은 GNU 프로젝트의 철학에 따라 GNU 패키지인 Bazaar를 고수했다. 이는 GNU 프로젝트가 자체 도구를 사용함으로써 자급자족하는 자유 소프트웨어 생태계(Self-Sufficient Free Software Ecosystem)를 구축하려는 의지를 반영한다. 하지만, Bazaar의 기술적 문제와 개발 중단으로 인해 이러한 이념적 선택은 실용적인 측면에서 비판을 받았다.

깃(Git) 전환 과정에서의 커뮤니티 혼란

2014년 깃(Git)으로의 전환 이후, Emacs 개발자들은 새로운 VCS에 적응하는 과정에서 어려움을 겪었다. 깃(Git) 사용법에 대한 기본적인 질문이 쏟아졌으며, 이는 그동안 Bazaar에 익숙해진 개발자들이 새로운 기술 스택(New Tech Stack)에 적응(Adaptation)하는 데 상당한 시간과 노력이 필요했음을 보여준다. 이러한 혼란은 기술적 선택의 중요성을 다시 한번 강조하는 계기가 되었다.

오픈소스 프로젝트 의사 결정 과정의 시사점

Emacs의 VCS 전환 과정은 오픈소스 프로젝트의 의사 결정 과정에서 기술적 우위와 이념적 가치의 충돌을 보여준다. 기술적 성능과 개발 생산성 향상이라는 실용적인 측면과 GNU 프로젝트의 철학이라는 이념적 가치 사이에서 갈등이 발생했다. 이는 오픈소스 프로젝트에서 기술적 선택(Technical Choice)이 단순히 기술적인 문제뿐만 아니라, 커뮤니티의 문화와 가치관에 깊이 연관되어 있음을 시사한다.

The Most Emacs Bzr Saga