이전에는 서브버전이 최고인줄만 알고 있다가 올초여름쯤에 분산버전관리인 DVCS를 익히기 시작했습니다. 처음에는 Git보다는 Mercurial로 배우기는 했지만 둘은 개념이나 명령어나 상당히 비슷하기 때문에 둘을 같이 쓰는 것은 큰 부담은 없는 것 같습니다. 처음 배울때는 기본의 중앙저장소 방식에 너무 익숙해진 나머지 분산버전관리라는 것에 대한 개념을 익히는데 꽤나 어려움이 있었지만 어느정도 사용하다보니 기존보다 여러가지로 훨씬 편하게 느껴졌습니다.
바로 앞에서 얘기한 것처럼 저는 현재 git을 이미 사용하고 있습니다. github도 사용하고 있고 공동프로젝트는 아니고 혼자서 사용하는 것이긴 하지만 기본적으로 소스 수정해서 커밋하고 원격저장소에 푸시하는 등의 관리는 어느정도 하고 있는 상태에서 이 책을 읽기 시작했습니다. 아주 기본적인 명령들만 사용하고 있었기 때문에 실제적인 DVCS의 장점을 제대로 활용하지 못하고 있어서 좀더 제대로 활용해볼 생각으로 git을 공부하려는 의도였습니다.
200여페이지정도의 아주 부담없는 책으로 집중해서 읽으면 몇일이면 다 읽을 수 있을 정도의 가벼운 분량입니다. 사실 툴에만 너무 많은 시간을 들이는 것도 어려운 일이기 때문에 이정도 분량이면 딱 좋은것 같습니다. 기본적인 DVCS의 개념은 가지고 있었기 때문인지 몰라도 저에게는 이 책이 무척이나 쉽게 설명해 주고 있다는 느낌입니다.
이 책에서 설명하고 있는 로컬저장소를 만들어서 기본적인 사용을 하고 브랜치나 로그관리등을 익힌 뒤에 원격저장소를 사용하게 되는데 이런 식의 접근 방법도 많은 사람들이 SVN에 익숙한 상황에서 시작부터 지역저장소와 원격저장소 모두를 가지고 이해하도록 접근하는 것보다는 훨씬 배우기 쉬운 접근이라는 생각이 들었습니다.
저자가 따라해 볼 수 있는 예제를 github에 각 챕터별로 올려놓고 설명하고 있기 때문에 중간에 예제를 제대로 따라하지 못한다거나 다 따라하지 못하더라도 새로받아볼 수 있고 또는 어렵게 느껴지는 챕터의 소스만 내려받아서 따라해보고 연습해 볼 수 있기 때문에 이 예제만 잘 활용해서 연습해도 git을 익히는데 간단하면서도 충분하다고 생각됩니다. 각 실습 예제들도 형상관리의 활용만 제대로 해볼수 있도록 여러가지 경우별로 잘 구성이 되어 있습니다. 뒷부분에는svn과 결합해서 사용하는 부분과 여러가지 git을 관리하는 툴들 그리고 역자들의 부록으로 egit등의 툴도 설명해 주고 있습니다.
책의 대부분은터미널을 이용한 커맨드로 git을 조작하는 것을 위주로 설명해주고 있습니다. 터미널에 익숙하지 않은 사람은 어려울 수 있고 svn도 명령어로 익히면 좋지만 대개는 그냥 클라이언트 프로그램을 이용해서 하는 것이 일반적이지만 git은 개념을 이해하는데 커맨드로 익히는데 초기비용을 좀 들더라도 훨씬 좋다고 생각됩니다. 기본적인 사용외에 잘 활용을 못하고 있었는데 책을 통해서 전체 개념과 명령어를 훑어보고 나니 전혀 몰랐던 부분들도 꽤 알게 되고 많은 도움이 되는것 같습니다.
채수원님의 번역(http://blog.doortts.com/141)으로 읽게 된 조엘님의 글에서 "만약 당신이 서브버전을 쭉 사용해왔다면, 당신의 뇌는 아마 살짝.. 음.. 어떻게 말해야 무례하지 않을려나.. 음.. 당신은 뇌가 손상되었다."를 보고 분산 버전 컨트롤에 대해서 알아 봐야 겠다고 생각하던 찰나, 이 글을 보고 조금 전에 서점에서 책을 사가지고 왔습니다. ^^ 좋은 책 소개 감사드립니다. 손상된 뇌를 복구해야겠네요.
재미있는 표현이군요... 뇌가 손상되었는지는 모르겠지만 svn보다는 훨씬 발전된 개념을 가지고 있다는 생각은 하고 있습니다. ㅎㅎ 저도 열심히 손상된 뇌를 복구해야겠네요
XPer에서는 올리시는 글 잘 보고 있습니다. ㅎㅎㅎ