21.02.03(21.02.04)
1. 깃이란
vcs(version control system, 버전 관리 시스템)이다.
버전 관리는 기록, 추적, 보관, 복원으로 구성된다.
깃의 저장소는 working tree, staging area(index), history로 구성되어있다.
* 저장소 구성
- working tree : 작업들의 변경사항을 추적한다.
- staging area : 작업이 완료된 파일들을 올려놓는 공간
- history : 실질적 저장소
2. 깃 명령어
git init : 깃을 생성하는 명령어. working tree, staging area, history가 모두 생성된다.
git add 파일명 : working tree에 있는 파일을 ataging area에 올리는 명령어
git status : 깃의 상태를 볼 수 있다.
git log : 깃의 로그를 볼 수 있다.
git commit : 작업 이력을 로컬 저장소에 저장하는 명령어.
staging area에 있는 모든 파일을 패키지로 묶어서 커밋한다.
git commit -m : 커밋할 때 title만 쓸 때의 커밋 옵션
git show HEAD : 커밋 메세지를 볼 수 있는 명령어
git diff : 워킹트리 파일들의 변경사항을 비교할 수 있는 명령어
3. 커밋 메세지
커밋 메세지는 title, type, body, footer로 이루어져 있다.
body와 footer은 선택사항이며 title, type만이 필수사항이다.
커밋 메세지의 기본 형식은 "type: title"이다.
* type의 종류
- feat : 새로운 문서or기능 추가
- docs : 기존 문서or기능 수정
- fix : 버그 수정
- style : 코드 포맷팅
- refactor : 코드 리팩토링
- test : 테스트 코드
- chore : 코드 수정 없이 설정 변경
4. git diff
워킹트리 파일의 변경사항을 비교/확인하는 명령어
git diff 옵션 및 사용법
git diff | working area에 있는 모든 파일의 수정사항을 볼 수 있다. |
git diff --cached/--staged | staging area에 있는 모든 파일의 수정사항을 볼 수 있다. |
git diff HEAD | HEAD : 커밋 고유값. 해당 커밋의 변경사항을 볼 수 있다. |
git diff HEAD HEAD^ | HEAD^ : 전단계의 커밋값. 변경사항을 비교한다.(2번째 기준) |
'Git and Github' 카테고리의 다른 글
github 여러가지 기능들(issues, project, milestone, discussion, etc) (0) | 2021.03.16 |
---|---|
git non-fast-forward 오류 (0) | 2021.03.11 |
git 취소, 삭제 (revert, reset) (0) | 2021.03.06 |
Git/github remote, branch, commit취소 (0) | 2021.02.04 |