본문 바로가기

Activity/책 리뷰

[리뷰/책] <팀 개발을 위한 Git/GitHub 시작하기> 리뷰

반응형

한 줄 요약 : Git/GitHub를 이용해서 최소한의 협업 가능한 상태가 될 수 있도록 도와주는 책

 

 


 

버전관리는 개발을 하면서 놓치기 쉬운 부분 중 하나다.

개발을 처음 시작했을 때, 초기에는 관리해야 할 파일이 적다.

관리할 파일이 적기 때문에 혼자서 관리하더라도 부담이 없다.

기록을 남겨놓지 않아도 내가 기억하고 있으면 문제가 안된다.

 

시간이 흘러 개발을 진행하며 관리해야 할 파일이 늘어나고, 서로 다른 일정으로 동시에 진행되어야 하는 일이 생길 수 있다.

혼자서 관리하던 개발 프로젝트 코드를 여러 사람이 담당하게 되고, 그 여러사람들이 동시에 여러 업무를 진행하기도 한다.

 

이렇게 상황이 바뀌었는데도 혼자서 기억하고, 기억을 바탕으로 업무를 진행해도 될까?

동료가 담당하던 코드를 내가 이어서 개발해야 할 경우 그런 상황마다 직접 설명을 해줘야 할까?

 

이런 답답함에 소스코드도 '관리'를 시작하게 됐을 것이다.

Git은 '버전 관리 도구'로 알려져있고, (내가 경험한 영역에서는) 소스코드를 관리하기 위한 목적으로 사용하고 있다.

 

Git을 잘 다룬다고 해서 개발을 잘 하게 되는 것은 아니다.

평생 혼자서 관리해야 하는 코드는 없다. 어느 순간 동료와 함께 관리를 해야 할 때가 온다.

그런 상황을 위해서 익혀둬야하는 도구라고 생각한다.

 

Git/Github 강의를 할 때 많은 사람들이 명령어를 직접 입력해야하는 CLI방식으로 배우는 것을 힘들어 하는 것을 보았다.

그 이후 Sourcetree, Git kraken 등 명령어를 직접 입력하지 않고 클릭 몇 번으로 사용가능한 GUI 방식의 도구들을 이용해서 강의를 진행했을 때 좀 더 쉽게 받아들이는 모습도 보았다.


책 앞면 / 목차 / 책 뒷면

이번에 읽은 '팀 개발을 위한 Git/GitHub 시작하기'책이 이런 어려움을 경험한 사람들에게 좋은 책인것 같다.

책은 약 300쪽 정도의 얇은 구성으로 7일 완성 목표를 두고 있다.

만약 Git을 혼자 공부해보려고 자료를 찾아본 적이 있는 사람이라면 공동저자인 진유림님의 초심자를 위한 Github 협업 튜토리얼 (with 토끼와 거북이)글을 한 번쯤 봤을 것이다.

 

블로그 글의 내용처럼 그림을 통해 책의 내용을 설명하고 있어서 용어에 대한 두려움을 확실하게 줄일 수 있을거라고 생각한다.

고양이, 문어, 너구리의 용어 설명

나는 어렵다고 느낄 때 용어가 어려운것이 대부분이라고 생각한다. 그렇기 때문에 무언가 처음 시작할 때 용어때문에 힘든 것인지, 정말 내용이 어려운 것인지 잘 구분해야하는데 Git을 처음 사용해보는 경우 용어때문에 힘들어하는 경우를 많이 봤다.

 

브랜치, 체리픽을 아시나요?

 

전반부에는 Git GUI도구인 SourceTree를 이용해서 버전관리에 대한 설명, 혼자서 개발할 때, 여러명이 함께 개발할 때 Git 명령어와 SourceTree를 어떻게 사용해야 하는지 설명하고 있다.

후반부에는 SourceTree로 배웠던 내용을 명령어를 직접 입력하며 복습 겸 심화학습을 하도록 되어 있다.

 

GUI방식과 CLI방식(명령어 방식)의 차이점은 자동차 자동세차와 손세차의 차이인 것 같다.

손세차를 해보면 세차를 어떻게 해야 하는지 순서와 방법을 익힐 수 있고, 그 후에 마음에 들지 않는 부분은 손세차를 통해 더 구석구석 닦을 수 있다.

이 책에서도 SourceTree를 이용해서 일단 Git을 사용하는 것에 대한 두려움보다는 '나도 할 수 있다'는 성취감을 느끼게 한다.

'일단 한 번 사용해보자'는 목표를 달성하고 난 뒤 명령어를 직접 사용하는 방식도 알려줘서 부담감이 훨씬 적다.

 

처음부터 사전을 통째로 외우듯이 하나하나 설명하는게 아니라 무엇을 해야 할 지 바로 실천 가능한 목표지점을 향해 달려간다.

목표지점에 도달하면 무엇을 설명하고자 했는지, 무엇을 공부했는지 자연스럽게 알 수 있게 구성되어 있다.

 

이 책을 완독하고 나면 일단 Git/GitHub를 이용해서 버전관리를 할 수 있고, 협업을 할 수 있는 준비 상태가 된다.

 

 

 

 


 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

리뷰를 위해 한빛미디어에서 책을 제공받았지만 주관적인 생각을 그대로 적었습니다.

반응형