Page no. 7
git은내 컴퓨터에서만 버전 관리가 되는 건가요?
Remote Repository
다른 사람들과 작업을 할 수 있게 해줍니다.
8.
Page no. 8
원격저장소에작업 내용을 어떻게 공유할까요?
원격저장소
로컬저장소 로컬저장소에 작업 내용 commit
push
협업을 위해 원격저장소에 push
9.
Page no. 9
svn은중앙집중식 버전 관리(CVCS)입니다.
관리자는 누가 무엇을 할지 꼼꼼하게 관리할 수 있습니다.
중앙 서버가 다운되면 아무도 협업할 수 없습니다..
Computer A 저장소
10.
Page no. 10
git은분산 버전 관리(DVCS)입니다.
커밋속도가 빠릅니다.
로컬저장소에 커밋을 하므로 커밋에 부담이 없습니다.
원격저장소와 연결이 끊겨도 버전 관리는 계속됩니다.
원격저장소에 문제가 생겨도 원격저장소에 연결되었던 로컬저장소로 복원이 가능합니다.
Computer A 원격
저장소
로컬
저장소
11.
Page no. 11
스테이지영역(또는 인덱스)는 로컬저장소 커밋 전의 단계입니다.
Working
Directory
Staging
Area
HEAD
Stage Fixes
Commit
Checkout the Project
워킹 디렉터리에서 파일을 수정합니다.
Staging Area에 파일을 Stage해서 커밋할 스냅샷을 만든다.
Staging Area에 있는 파일들을 커밋해서 git 디렉터리에 영구적인 스냅샷을 저장합니다.
Page no. 13
원격저장소에서다른 작업자의 작업 내용을 내려받으려면
Computer A 로컬
저장소
git merge git fetch
git pull
원격
저장소
14.
Page no. 14
svn은각 파일의 변화를 저장합니다.
Checkins Over time
Version 1 Version 2 Version 3 Version 4 Version 5
File A △1 △ 2
File B △ 1 △ 2
△ 1 △ 2 △ 3File C
기초가 되는 파일과 함께 모든 변경 내역을 내려 받습니다.
15.
Page no. 15
git은시간 순으로 프로젝트의 스냅샷을 저장합니다.
Checkins Over time
File A A1 A1 A2 A2
File B B B B1 B2
File C C1 C2 C3 C3
Version 1 Version 2 Version 3 Version 4 Version 5
파일이 달라지지 않았다면 성능을 위해 파일을 새로 저장하지 않습니다.
16.
Page no. 16
svn과git의 차이점 요약
1. 저장소의 위치가 다르며 로컬저장소가 존재합니다. (분산 처리, 안전, 빠른 속도)
2. 커밋 이전에 스테이지 영역에 추가하는 과정이 있습니다. (커밋 대상의 분리)
3. 각각의 버전을 스냅샷으로 저장합니다.
4. 스냅샷이 있기에 브랜치도 자유롭게 만들 수 있습니다.