Git ?
코드 버전 관리 및 협업 프로그램
* 버전 관리 : 파일의 변화를 시간에 따라 기록했다가 특정 시점의 버전을 불러올 수 있는 기능
Working directory(working tree) ?
작업을 하는 프로젝트 디렉토리
Staging area ?
add를 한 파일들이 존재하는 영역으로 커밋을 하게 되면 staging area에 있는 파일들이 커밋에 반영된다.
* 커밋을 할 파일을 지정하여 더 세밀한 버전 관리를 가능하게 해 준다.
Repository(저장소) ?
working directory의 변경 이력들이 저장되어있는 영역 (커밋들이 저장되는 영역)
*. git 디렉터리 = 레퍼지토리
Commit ?
프로젝트 디렉터리의 모습을 하나의 버전으로 남기는 동작 혹은 그 결과물
* commit에 필요한 정보
- commit 하는 사용자 정보
- commit할 대상(파일)
- commit에 대한 정보
* 하나의 커밋에는 하나의 이슈를 해결한 내용만 남겨 어떤 부분을 수정했는지 정확하게 알게 하는 것이 좋다.
* 전체 코드를 실행했을 때 에러가 발생하지 않는 상태인 경우에만 커밋을 하는 것이 좋음
-> 나중에 다른 동료 개발자가 확인해도 이해하는데 어려움이 없어야 한다는 것을 항상 염두에 두어야 한다.
add ?
커밋할 파일을 미리 지정해주는 일
수정된 파일의 모습이 커밋에 포함될 것이라 지정하는 것
reset ?
과거 커밋으로 아예 돌아가고 싶은 경우 해당 커밋으로 돌아갈 수 잇다. (결과가 마음에 안드는 경우)
HEAD, staging area, working directory를 과거의 특정 커밋의 내용과 같게 만든다.
Git 파일의 상태?
- Untracked
파일이 Git에 의해 변동사항이 전혀 추적되고 있지 않는 상태 (Remove the file)
- Tracked
파일이 Git에 의해 변동사항이 추적되고 있는 상태
- Staged
파일의 내용이 수정되고 나서, staging area에 올라와 있는 상태 (Add the file)
- Unmodified
최신 커밋의 모습과 비교했을 때 변경사항이 없는 경우 (commit)
- Modified 상태
최신 커밋의 모습과 비교했을 때 조금이라도 변경사항이 있는 경우(Edit the file)
HEAD
: 가장 최근에 한 커밋을 가리킴 / working directory의 상태
기초 명령어
developing-countries.tistory.com/4
3. Git 기본 명령어 정리
기초 명령어 git init : 빈 Repository를 생성 git config user.name "이름" : 이름 설정 git config user.email : "이메일@주소" : 이메일 주소 git commit -m "commit에 관한 정보" : commit 버전 관리 대상..
developing-countries.tistory.com
'git' 카테고리의 다른 글
[git] stash (0) | 2021.04.26 |
---|---|
[git] pull (0) | 2021.04.26 |
[git] branch (0) | 2021.04.16 |
[git] 기본 명령어 정리 (0) | 2021.04.11 |
[git] GitHub 기초 (0) | 2021.04.11 |
댓글