1. GIT 소개
1) GIT 란?
-. 파일의 변화를 시간에 따라 기록하여, 파일의 버전을 조회, 복원하는
파일 버전관리 시스템의 한 종류
-. 분산버전관리 시스템 채택
: 클라이언트가 파일들의 마지막 스냅샷을 가져오는 대신 저장소를 복사.
서버에 문제가 생겨도 어느 클라이언트든 복제된 저장소를 다시 서버로
복사하면 서버가 복구 됨. 즉, 체크아웃 할 때마다 전체 백업이 일어남.
중앙집중식 버전관리(CVS)
분산버전관리 (GIT)
2. GIT 설치
- 설치 경로 : https://git-scm.com/
3. GIT GUI CLIENT 설치
1) Tortoise git
원래 GIT는 CMD창에서 명령을 이용하여 사용하도록 되어 있음. (CLI)
USER 들이 GUI 환경에서 쉽게 사용할 수 있도록 만들어진 UTIL
- 설치 경로 : https://tortoisegit.org/
7. GIT GUI CLIENT 사용법
1-2) CLONE (서버 또는 LOCAL에서만 이용할 때는 생략)
: 원격 서버의 저장소를 복제하기 위한 행위
-> CLI환경 : git clone 사용자명@호스트:/원격/저장소/경로
8. 1-2) CLON (서버 또는 LOCAL에서만 이용할 때는 생략)
GIT GUI CLIENT 사용법
URL : 원격서버의 저장소 위치
Directory : 원격저장소의 소스코드를 복사할 LOCAL 경로.
9. GIT GUI CLIENT 사용법
2) 파일 추가 & 커밋
: 파일을 GIT 에 추가하고, 내용을 반영하는 기능. 파일 추가는 최초만 하면 됨.
-> CLI환경 : git add <파일명> (INDEX 추가 – 대기상태, 파일구조 생성)
git commit –m “comment” (HEAD생성 - 실제 내용 반영 )
10. GIT GUI CLIENT 사용법
2) 파일 추가 & 커밋
Comment 입력 - 파일의 변경 사항 입력
Commit 할 파일 선택
*Commit 할 때 선택한 파일 중 변경된 파일이 모두 나타남.
*파일 더블 클릭 시 오른쪽 그림과 같이 변경사항 볼 수 있음. (TEXT, 이미지 한)
11. GIT GUI CLIENT 사용법
3) 변경이력 확인
: 파일의 COMMIT 된 이력을 조회
-> CLI환경 : git log 파일명
12. GIT GUI CLIENT 사용법
4) 변경내용 발행하기
: 로컬에 저장된 변경내용을 서버의 원격저장소에 발행.
로컬이 원격저장소 자기 자신이면 생략.
-> CLI환경 : git push origin master
CLON 한 원격저장소를 선택하고 OK 를 누름.
Local : 원격저장소에 반영할 브렌치를 선택
13. GIT GUI CLIENT 사용법
5) 되돌리기
: 파일의 변경내용을 이전 버전으로 되돌리는 기능.
되돌릴 때에는 한 버전씩 되돌리는 것이 좋다. 한꺼번에 건너 뛸 경우
불필요한 충돌 발생가능.
-> CLI환경 : git revert –n 커밋명(해쉬코드)
14. GIT GUI CLIENT 사용법
6) 브랜치
: 안정하게 격리된 상태에서 무언가를 만들 때 사용.
기본적으로 master 브랜치가 만들어짐.
다른 브랜치를 이용해 개발을 진행 후 나중에 개발이 완료되면
mater 브랜치에 병합함.
15. GIT GUI CLIENT 사용법
6) 브랜치 생성
HEAD : Master 브랜치의 가장 최신 리비전에서 브랜치 생성
Branch : 선택한 브랜치의 가장 최신 리비전에서 브랜치 생성
Tag : 선택한 Tag 에서 브랜치 생성
Commit : Commit 지점을 선택 가능. 다른 리비전에서 브랜치 생성 시 사용
16. GIT GUI CLIENT 사용법
6) 브랜치 변경
: 아래의 그림 처럼 브랜치를 스위치하면 폴더의 브랜치가 변경됨.
17. GIT GUI CLIENT 사용법
6) 브랜치 변경
: 아래의 그림 처럼 브랜치가 변경되고, DEVELOP 브랜치에 커밋되는 것을
볼 수 있다.
18. GIT GUI CLIENT 사용법
7) 합병(Merge)
: 개발브랜치로 개발 후 Master에 합병하려면, 개발 폴더의 브랜치를
master 브랜치로 변경.
19. GIT GUI CLIENT 사용법
7) 합병(Merge)
: 개발브랜치로 개발 후 Master에 합병하려면, 개발 폴더의 브랜치를
master 브랜치로 변경. 그 후에 오른쪽 버튼을 눌러 Merge 를 선택
20. GIT GUI CLIENT 사용법
7) 합병(Merge)
: Branch를 DEVELOP로 선택한 후에 합병 메시지를 적고 OK 선택.
현재 폴더에 선택되어 있는 브랜치에 아래 그림에서 선택한 브랜치를
합병한다고 생각하면 됨.
21. GIT GUI CLIENT 사용법
7) 합병(Merge)
: 아래 그림과 같이 DEVELOP 브랜치에서 생성한 5.txt와 1.txt 의 변경 내용이
Master에 반영된 것을 볼 수 있다.
22. 참고 사이트 & 책
1) GIT-SCM 의 레퍼런스 : https://git-scm.com/book/ko/v2
2) TortoiseGit 의 동영상 강의 : https://opentutorials.org/course/337/2314
3) GitHub 무료 저장소 지원 (오픈소스) : https://github.com/
4) GIT 동영상 강의(GUI tool 소스트리) :
https://opentutorials.org/course/1492/8035
23. 참고 Commit message 양식
1) 좋은 Commit 메시지 작성법 관련 글
: http://b.ssut.me/55
: http://haruair.com/blog/2683
: http://euntak.github.io/etc/2016/04/03/git-commit-message/