-
1. 시작하기
-
2. Git의 기초
- 2.1 Git 저장소 만들기
- 2.2 수정하고 저장소에 저장하기
- 2.3 커밋 히스토리 조회하기
- 2.4 되돌리기
- 2.5 리모트 저장소
- 2.6 태그
- 2.7 Git Alias
- 2.8 요약
-
3. Git 브랜치
-
4. Git 서버
- 4.1 프로토콜
- 4.2 서버에 Git 설치하기
- 4.3 SSH 공개키 만들기
- 4.4 서버 설정하기
- 4.5 Git 데몬
- 4.6 스마트 HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 또 다른 선택지, 호스팅
- 4.10 요약
-
5. 분산 환경에서의 Git
- 5.1 분산 환경에서의 워크플로
- 5.2 프로젝트에 기여하기
- 5.3 프로젝트 관리하기
- 5.4 요약
-
6. GitHub
- 6.1 계정 만들고 설정하기
- 6.2 GitHub 프로젝트에 기여하기
- 6.3 GitHub 프로젝트 관리하기
- 6.4 Organization 관리하기
- 6.5 GitHub 스크립팅
- 6.6 요약
-
7. Git 도구
- 7.1 리비전 조회하기
- 7.2 대화형 명령
- 7.3 Stashing과 Cleaning
- 7.4 내 작업에 서명하기
- 7.5 검색
- 7.6 히스토리 단장하기
- 7.7 Reset 명확히 알고 가기
- 7.8 고급 Merge
- 7.9 Rerere
- 7.10 Git으로 버그 찾기
- 7.11 서브모듈
- 7.12 Bundle
- 7.13 Replace
- 7.14 Credential 저장소
- 7.15 요약
-
8. Git맞춤
- 8.1 Git 설정하기
- 8.2 Git Attributes
- 8.3 Git Hooks
- 8.4 정책 구현하기
- 8.5 요약
-
9. Git과 여타 버전 관리 시스템
- 9.1 Git: 범용 Client
- 9.2 Git으로 옮기기
- 9.3 요약
-
10. Git의 내부
- 10.1 Plumbing 명령과 Porcelain 명령
- 10.2 Git 개체
- 10.3 Git Refs
- 10.4 Packfile
- 10.5 Refspec
- 10.6 데이터 전송 프로토콜
- 10.7 운영 및 데이터 복구
- 10.8 환경변수
- 10.9 요약
-
A1. 부록 A: 다양한 환경에서 Git 사용하기
- A1.1 GUI
- A1.2 Visual Studio
- A1.3 Eclipse
- A1.4 Bash
- A1.5 Zsh
- A1.6 Git in Powershell
- A1.7 요약
-
A2. 부록 B: 애플리케이션에 Git 넣기
-
A3. 부록 C: Git 명령어
- A3.1 설치와 설정
- A3.2 프로젝트 가져오기와 생성하기
- A3.3 스냅샷 다루기
- A3.4 Branch와 Merge
- A3.5 공유하고 업데이트하기
- A3.6 보기와 비교
- A3.7 Debugging
- A3.8 Patch 하기
- A3.9 Email
- A3.10 다른 버전 관리 시스템
- A3.11 관리
- A3.12 Plumbing 명령어
A3.9 부록 C: Git 명령어 - Email
메일링 리스트로 관리하는 프로젝트가 많이 있다. Git 프로젝트 자체도 그렇다. Git에는 이메일로 작업하기 쉽게 만들어 주는 도구가 들어 있다. Patch를 생성해서 이메일을 보내고 메일 박스에서 Patch를 적용하는 과정을 도와준다.
git apply
git apply
명령은 git diff
명령으로 생성한 Patch를 적용하는 명령이다. GNU diff 명령으로 생성한 Patch도 가능하다.
약간의 차이는 있지만 patch
명령어랑 비슷하다.
이 명령을 사용하는 상황과 어떻게 사용하는지 이메일로 받은 Patch를 적용하기에서 설명한다.
git am
git am
명령으로 이메일 인박스에 든 mbox 포맷의 Patch를 적용할 수 있다.
이메일로 패치를 주고받을 때 유용하다.
git am
을 언제 어떻게 사용하는지는 am
명령을 사용하는 방법에서 다룬다. --resolved
, -i
, -3
옵션 사용법을 설명한다.
git am
명령을 사용할 때 설정할 수 있는 훅은 이메일 워크플로 훅에서 다룬다.
이 명령으로 GitHub Pull Request의 Patch도 적용할 수 있는데 이메일 알림에서 설명한다.
git format-patch
git format-patch
명령은 Patch를 mbox 포맷으로 생성하는 데 사용한다. 생성 한 패치를 쉽게 메일링 리스트로 보낼 수 있다.
git format-patch
로 프로젝트에 기여하는 예제를 대규모 공개 프로젝트와 이메일을 통한 관리에서 보여준다.
git imap-send
git imap-send
명령은 git format-patch
로 생성한 메일을 IMAP drafts 폴더에 넣어준다.
git imap-send
명령으로 예제는 대규모 공개 프로젝트와 이메일을 통한 관리에서 살펴본다. 패치를 보내서 프로젝트에 기여해보는 예제다.
git send-email
git send-email
명령은 git format-patch
명령으로 생성한 Patch를 이메일로 보내는 데 사용한다.
대규모 공개 프로젝트와 이메일을 통한 관리에서 git send-email
명령으로 패치를 보내서 다른 프로젝트에 기여하는 것을 보여준다.
git request-pull
git request-pull
명령은 메일 바디를 생성해주는 명령이다. 그래서 쉽게 다른 사람에게 메일을 보낼 수 있다.
브랜치에 커밋하고 Push 해 놓은 상태를 누군가에게 알릴 때 유용하다. Patch 자체는 이메일로 보내지 않고 정보만 요약해 보낼 수 있다. 이 명령의 결과를 메일로 보내면 된다.
공개 프로젝트 Fork에서 git request-pull
명령을 사용하는 것을 보여준다.