Git 튜토리얼 및 버전관리시스템(VCS)비교

2016-09-12

    Git을 써보긴 써봐서 찾아서 쓸 줄은 알지만 fork떠서 로컬에서 작업하고 pull request를 날려본적이 처음이다. 작년에 배웠을때는 git 공식문서를 보고 시작했다. 저 문서가 매우 친절해서 좋긴 하지만 사실 자주 쓰는 명령어는 따로 있어서 처음부터 쭉 보기는 좀 피곤하다는 생각이 든다.(내 기준)

    구글에 git tutorial을 검색하면 정말 좋은자료들이 많이 나오지만 codecademy 사이트의 Git배우기를 추천한다. 영어긴한데 저 링크에서 설명할때 쓰는 영어가 어렵지 않아서 금방 할 수 있을 것이다. Git 처음 쓰는 사람도 한 시간이면 기본사용에 대해서 충분히 익힐듯.

    codecademy로 git을 익히기 전에 먼저 SVN과 Git의 차이점을 알고 시작하면 좋을 것 같다. Version Control System(버전관리시스템, 형상관리툴. 이하 VCS)은 3가지가 있다. CVS, SVN, Git이 있는데 작년 여름에 하도 공부하라고 선배가 말해서 그때 반강제로 외우게 된 것이다. 뜬금 저녁먹으러 걸어갈때나 게임할때나 잊을만하면 버전관리툴이 뭐냐고 세개 차이점이 뭐냐고 물었었다(…)

    사실 VCS의 종류가 많지만 보통 저 3가지가 자주 언급된다. 구글에 저 셋의 차이점을 검색하면 2010년 갓 넘었을때의 글들이 보이는데 “SVN에서 Git으로 꼭 옮겨야 할까”,”Git이 무조건 SVN보다 나은가?”류의 글이다. 거의 모든 사람들이 저 셋중에서 Git을 추천 할 것이다. SVN과 Git의 차이에 대해 말하기 이전에 일단 이 글을 보면 알겠지만 SVN과 CVS는 안쓰는 추세다. 저 그래프를 보면 왜 인지 CVS가 SVN보다 사용이 많다. 직접 Google Trend에 저 3가지를 비교해봤는데 알 수 없는 결과가 나왔다. Google Trend로 git, svn, cvs 비교에서 보면 알겠지만 실 사용에 대한 결과가 아니라 관심도에 대한 결과다.

Google Trend로 git, svn, cvs 비교 ▲ Google Trend로 git, svn, cvs 비교

Google Trend - cvs 연관검색어 ▲ Google Trend - cvs 연관검색어

    비교 키워드 3개는 그대로 두고, 카테고리를 인터넷, 통신, 컴퓨터 및 전자제품등 으로 해봐도 썩 원하는 결과가 나오지 않았다. 아무래도 사람들이 편의점 배송, 회사이름 등의 이유로 cvs라는 단어로 검색을 하기 때문에 저런 결과가 나온것 같다. 이 글 대로 CVS보다 SVN을 쓰는것은 명백하나 Git을 쓰도록하자. 구글 검색 결과만 봐도 CVS는 SVN과 Git의 비교대상으로 넣지도 않는다. 비슷한 단어들을 한 그룹으로 묶어서 비교를 해보고 싶었으나 한 그룹에 여러 키워드를 넣을 수 없는 모양이다. Google Trend의 비슷한 단어들 비교를 보면 구글트렌드가 아주 객관적인 자료는 아닌듯 하다.

    VCS 3개를 비교해 놓은 좋은 글이 Git 공식문서 시작하기 - 버전관리란?에 있다. codecamedy나 직접 github repo를 생성해서 해보기 전에 저 공식문서의 첫번째 챕터인 시작하기는 꼭 읽어보고 시작하자.