본문 바로가기
책/리뷰

[책 리뷰] 그림과 실습으로 배우는 깃&깃허브 입문

by 킁킁잉 2024. 11. 3.

 

개발자와 깃헙은 떼려야 뗄 수 없는 관계인 것이고..프론트엔드 개발자를 준비하는 저는 깃헙을 매우 자주, 거의 매일 사용 중입니다.

 

저의 깃, 깃헙 관련 경험을 잠깐 정리해보았습니다.

- 2022년 2월 28일 깃헙 계정 개설
- 2022년 11월 1일 첫 커밋
- 2023년 커밋 87개
- 2024년 현재 리뷰글 작성일 기준 커밋 1,056개
- 깃헙 활용 협업 경험 5회(이상일수도)
- 개발 동아리 내 깃, 깃헙 관련하여 멘토링 자료 제작 경험 有

 

꽤나 많은 협업 경험을 하였고 멘토링까지 진행해보았지만, 진행하는 프로젝트마다 커밋 실수, 브랜치 오염 한번씩은 저지르는것 같아요. 이전 프로젝트에서는 브랜치 오염 실수를 저질렀고(브랜치 오염을 했다면 빨리 자수하고 용서받읍시다 ), 가장 최근에 진행한 프로젝트에서도 작업 브랜치를 dev 브랜지로 merge하는 과정에서 문제가 발생해 식은땀을 흘리며 revert로 수습했습니다. 최종 merge는 팀원분이 수동으로 해결해주심😭

 

무수한 실수들을 저지르면서 저는 깃&깃헙에 대해 각 잡고 공부해야겠다고 생각했습니다. 프로젝트에서의 실수는 자수하여 광명 찾을 수 있지만, 회사에서는 실수하면 안되니까요. 최근 인턴 업무로 대규모 프로젝트 인수인계를 받게 되었고, 이제 진짜 실수하면 수습해줄 사람도 없기에..생존을 위해 그림과 실습으로 배우는 깃&깃허브 입문을 구매하게 되었습니다.

 

이 리뷰는 위키북스의 깃허브 리더 서포터즈 활동을 위해 구매하여 작성하였습니다.

 

밤에 주문하고 새벽에 도착했다고 문자와서 놀랐습니다. 표지가 예뻐서 IT 서적이 아닌 것 같습니다. (도마뱀 어디갔는데!)

 

💡개요

Git와 GitHub는 코드 버전 관리와 협업을 위한 필수 도구입니다.

  1. Git: 분산형 버전 관리 시스템으로, 코드의 수정 이력을 저장하고 관리합니다. Git을 사용하면 코드의 변경 사항을 추적하고, 이전 버전으로 쉽게 되돌릴 수 있습니다. 분산형 구조라서 네트워크 연결 없이도 로컬에서 작업하고, 필요할 때만 다른 사람과 변경 사항을 공유할 수 있습니다.
  2. GitHub: Git을 기반으로 한 원격 저장소 호스팅 플랫폼입니다. GitHub를 사용하면 저장소를 온라인에 올려 여러 개발자들과 협업할 수 있고, 코드 리뷰, 이슈 관리, Pull Request 등을 통해 효율적으로 프로젝트를 관리할 수 있습니다.

쉽게 말해, Git은 코드 관리 도구이고 GitHub는 이를 활용한 협업 플랫폼입니다. 이 책은 Git의 기본 개념, 동작원리와 사용 방법을 그림을 통해 초보자가 알기 쉽게 설명합니다.

 

책의 주요 목차는 다음과 같습니다.

목차
1. 들어가며
2. 전지전능한 관찰자 Git
3. Git의 원리
4. 복잡한 문제를 해결하는 브랜치
5. 진짜 협업의 시작, 깃허브
6. 오픈소스에 기여하기: 명언 백과사전
7. 실무에서 자주 사용하는 Git 명령어
8. GUI와 깃허브 데스크톱
9. 깃허브 데스크톱으로 협업하기
부록: Git 명령어 노트

 

👻모두가 깃 크라켄을 외칠 때 난 깃헙 데스크탑을 외쳤지

이 책에서는 CLI를 사용한 Git 사용과, GUI를 사용한 Git 사용을 모두 다루며 책에서 사용하는 GUI 프로그램은 Github Desktop입니다.

 

Github Desktop이 뭐냐. Git 관리를 위한 근-본 GUI 프로그램입니다.

 

동아리 내 모두가  Git Kraken을 사용할 때 저는 꿋꿋이 Github Desktop을 사용했습니다. 책에서 Github Desktop을기준으로 설명하다니 나의 외길 인생이 인정받은 것 같아서 기뻤습니다. 하지만 Git kraken이 브랜치 시각화 등 Github Desktop은 절대 따라잡을 수 없는 강점들이 있기도 하고,  현업에서도 Git Kraken을 많이 사용한다고 들었기에 Github Desktop만 다룬다는 점은 조금 아쉽게 느껴지기도 했습니다.

 

GitHub Desktop과 GitKraken은 모두 Git 버전 관리를 돕는 GUI 도구이지만, 각각의 사용자 경험과 기능에는 차이가 있습니다.

 

  Git Kraken Github Desktop
특징
  • GitHub, GitLab, Bitbucket 등 다양한 Git 호스팅 서비스와 호환됨.
  • 비주얼화된 커밋 그래프와 직관적인 드래그 앤 드롭 인터페이스로 브랜치 관리가 편리함.
  • 무료 버전도 있지만 유료 플랜에서 더 많은 기능을 제공.
  • GitHub 플랫폼과의 연동이 강력하여 GitHub 사용자에게 최적화됨.
  • 직관적인 UI로 기본적인 Git 작업(클론, 커밋, 브랜치 생성 등)을 쉽게 수행 가능.
  • 오픈 소스이며 무료.
장점
  • 복잡한 브랜치와 커밋 히스토리를 시각화하는 기능이 뛰어나며 대규모 프로젝트에서 유리.
  • Git Flow와 같은 고급 워크플로를 지원하여 팀 단위 협업에 유리.
  • 내장된 코드 에디터와 충돌 해결 기능으로 편리한 작업 가능.
  • GitHub와의 통합이 원활하여 GitHub Actions와 같은 GitHub의 기능을 쉽게 사용할 수 있음.
  • 초보자에게 친숙한 인터페이스로 복잡하지 않아 빠르게 익히기 좋음.
  • 간단한 협업과 코드 리뷰 기능을 제공.
단점
  • 유료 플랜이 필요하여 모든 기능을 사용하려면 비용이 발생.
  • UI가 다소 복잡하여 Git 초보자에게는 부담스러울 수 있음.
  • 브랜치 등 시각화 기능이 미흡함
  • 고급 Git 명령어나 다양한 Git 워크플로에 대한 지원이 제한적.
(좌) Git Kraken (우) Github Desktop

Git kraken의 시각화 기능은 너무 좋지만, 처음 사용하기에는 직관적이고 무료인! Github Desktop이 좋아보이긴 합니다.

(Git Kraken은 학생 인증을 통해 무료로 사용가능합니다. 증빙 서류 제출 등 번거로운 과정이 필요하지만 학생일때만 누릴 수 있는 혜택이니 학생분들께는 Git Kraken 적극 추천드립니다. 국문 재학증명서 X, only 영문 재학증명서

 

📖핵심 내용

깃 동작 원리와 기본 개념을 그림을 사용하여 쉽게 설명합니다. 글로만 설명한다면 이해하기 어렵고 난해한 개념들이 많은데, 그림을 통해 설명하므로 막힘 없이 읽을 수 있습니다.

 

1부는 기초편으로, Git의 기본 개념과 원리, Git 설정 방법, 커밋 개념, 브랜치 개념과 사용법, 깃허브 계정 생성과 실습을 다룹니다.

 

2부는 실전편으로 오픈소스 풀리퀘스트 생성, 실무에서 사용하는 Git 명령어를 설명합니다.

 

3부는 GUI 편으로, 깃허브 데스크톱 설치 및 사용 방법, 깃허브 데스크톱을 활용한 협업 실습을 다룹니다.

 

그림을 사용하여 초보자가 쉽게 이해할 수 있게 설명하며, 실습을 자세하게 다룹니다. 실습을 위해 필요한 프로그램 설치,환경 설정, 실습을 단계별로 설명하여 직접 경험하며 깃과 깃헙을 학습할 수 있습니다. 

 

평소 CLI로 작업을 많이 하지 않았는데, 이 책을 읽으면서 CLI 명령어의 사용 방법과 동작 과정을 정말 세세하게 배우고 있어 큰 도움이 되고 있습니다. 그동안 어느 정도 기능은 GUI로 해결할 수 있어서 CLI를 등한시했지만, GUI로 할 수 없는 기능들도 많아 CLI 명령어를 제대로 아는 게 정말 중요하다는 걸 느꼈습니다. CLI를 사용한다 한들, add, pull, push 같은 기본 명령어만 사용했었지만, 이제는 더 다양한 Git 작업을 명령어를 통해 할 수 있을 것 같아 기대됩니다. 명령어, 깃 기능에 대해 많이 알수록 할 수 있는 작업의 범위가 늘어나고, 겁먹지 않고 PR...날릴 수 있기 때문에 앞으로의 협업에 큰 도움이 될 것 같습니다.!

 

❤️추천대상

깃 입문자를 위한 책입니다. 책 내에서 Git workflow, HEAD 개념, CLI 기반 Git 활용을 정말 상세하게 다뤄, 입문하기에 너무 좋은 책이라고 생각합니다. 깃, 깃헙을 모르던 사람도 이 책 한권이면 협업에서 능숙하게 깃, 깃헙을 사용할 수 있을 것 같습니다.

 

깃 사용 경험이 있더라도 이 책이 많은 도움이 될 것 같습니다. 개념 및 CLI 구성이 알차고, 부록으로 Git 명령어 노트가 제공되어 협업 시 자주 참고할 것 같습니다. 맨날 크롬창에 깃업 풀하는 명령어 검색하는 분(네 저에요😥)들께 구매 추천드립니다.