Git 교과서

코드 이력, 하나도 놓치지 마라!

버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!

Yes24 교보문고 알라딘 인터파크 길벗

Git 교과서


프로그래밍할 때는 논리적으로 코드를 작성하는 것이 중요합니다. 하지만 그보다는 작성한 코드를 유지하고 관리하는 것이 더 중요합니다. 경험이 많은 개발자라면 작성한 코드를 안정적으로 관리하고 배포하는 것이 얼마나 어려운지 실제 업무로 알고 있을 것입니다.

개발자들은 안정적인 코드를 유지하려고 다양한 방법을 시도했습니다. 그 과정에서 파일을 직접 관리하거나 도구를 만들기도 했습니다. 그래서 탄생한 도구가 버전 관리 시스템(VCS)입니다.

코드를 작성하는 것과 개발을 위해서는 관련된 도구들을 능숙하게 잘 사용하는 것도 중요합니다. IDE, 편집기, 디버그 툴 등 개발을 도와 주는 보조 도구들이 많습니다. 그 중에서 제일 으뜸인 도구는 버전 관리 도구일 것입니다.

모던 개발을 추구하는 사람이라면 깃(Git)과 깃허브(GitHub)라는 단어를 들어 보았을 것입니다. 깃은 현재 가장 널리 사용하는 버전 관리 시스템이며, 깃허브는 깃을 이용하여 서비스를 운영하는 호스팅입니다. 또 깃을 좀 더 쉽게 사용할 수 있는 소스트리(Sourcetree)도 있습니다.


학습 사이트에서 다루는 내용


깃을 제대로 학습하고 사용하는 것은 쉽지 않습니다. ‘깃’으로 검색하면 수많은 글을 찾을 수 있는데, 해당 명령어만 찾아 사용하는 데는 충분합니다. 하지만 초보를 탈출하고 본격적으로 깃을 사용하다 보면 생각보다 많은 난관에 부딪치곤 합니다.

깃을 제대로 학습하려면 다뤄야 할 내용이 매우 방대합니다. 책에 모든 내용을 담기에는 지면의 한계가 있습니다. 따라서 필자는 다루지 못한 부분을 학습 사이트에서 추가로 학습할 수 있게 하였습니다. 본 도서와 함께 학습하시면 더 많은 정보를 얻어 가실 수 있을 것입니다.

  • 1부: Git 교과서의 본문과 추가로 설명하고 싶었던 내용을 좀 더 담았습니다.
  • 2부: 비트버킷과 깃랩, 풀 리퀘스트, 훅, 브랩치 전략 등 공유와 협업 관련 내용을 설명합니다.
  • 3부: 깃을 활용해 할 수 있는 것들을 설명합니다.


실습 저장소


이 책에서 실습한 모든 저장소는 깃허브에 공개되어 있습니다. 하지만, 직접 실습을 통하여 저장소를 생성하고 자신의 환경에서 실습해 보시길 바랍니다.

https://github.com/jinygit


베타 리뷰


Git 교과서를 읽고 소감이 있으신 분들은 메일로 보내주세요. 선정된 리뷰는 사이트에 게재하여 드립니다

이정해 (베스핀 글로벌-DMS 팀)

5년 전쯤 지인을 통해 깃이란 버전 관리 프로그램을 알게 되었습니다. 버전 관리 프로그램으로 SVN을 사용할 때였는데, 데이터베이스 저장소가 일정 크기로 커지면 깨지곤 했습니다. 그래서 늘 불만이었는데, 깃을 알았을 때는 신세계가 열 린 듯했습니다. 이제 깃은 프로그램 개발자가 알아야 할 기본 중의 기본이 되었습니다. 개발 소스부터 버전 관리가 필요 한 문서 작성, 기타 버전 관리가 필요한 분야 및 개인 소스 저장소, 개인 프로젝트 관리 등 여러 분야에서 굉장히 많이 사 용합니다. 요즘은 DBA들도 데이터베이스 관련 스크립트나 프로그램을 깃허브에 올려 서로 공유하면서 사용하고 있습 니다. 베타 리더는 공부할 계획이던 저에게는 좋은 기회가 되었습니다. 책에 나온 대로 실습 환경을 구성하고 진행했습니 다. 그리 어렵지 않게 실습 환경을 구축할 수 있었고 최근 깃 버전을 이용하여 실습하기 때문에 좋았습니다. 실습할 때는 명령문과 함께 결과를 같이 보여 주어 실행한 결과가 맞는지 한눈에 알 수 있었습니다. 그리고 각 예제마다 다른 실습 폴 더를 만들어 실습하기 때문에 꼬이거나 실수하는 일 없이 편하게 진행할 수 있었습니다. 또 하나하나 예제를 들어가며 깃 이론을 설명하기 때문에 실습을 하면서 용어에 적응할 수 있다는 점도 좋습니다.

실습 환경 Windows 10 Professional, Git 2.25.1, Sourcetree 4.0, Visual Studio Code

유동환 (LG전자 안드로이드 개발자)

깃은 회사에서 개발할 때 반드시 알고 있어야 합니다. 이 책은 깃의 개념과 활용법을 친절하게 설명해 주어 좋았습니다. 또 콘솔 기반의 깃 배시와 GUI 기반의 소스트리를 모두 다루어 어느 한쪽에 치우치지 않고 균형감 있게 설명합니다. 개 인적으로는 좀 더 간결한 구성을 좋아하지만, 초보자가 학습하기에 ‘친절한 깃’ 책이라고 생각합니다.

실습 환경 Windows 10, Git 2.6.1


저자의 말


“단순히 따라 하기 위한 책이 아니라 깃의 원리와 실습을 같이 학습하는 책을 만들고 싶었습니다. 책과 학습 사이트가 많은 분께 도움이 되면 좋겠습니다.”