======================
=> 보통 파일 및 폴더를 working tree 라고 부르며, 여기에서 파일을 수정
=> commit을 실행하기 전의 repository와 working tree 사이는 staging area 또는 index.
=> commit과정은 모든 수정사항을 repository에 모두 저장하는 것이 아닌, staging area에 저장.
=> 이 staging area 에서 필요 여부에 따라 commit
=> staging area에 있는 파일들을 git de commit하여 스냅샷으로 저장
- 변경사항에 대한 추적 가능 (수정, 삭제, 비교, 되돌아가기 등)
- Github을 통한 공유의 편리성
- 2인 이상 협업시 개발의 편리성
깃에 데이터가 저장되어 온 기록(파일 추가, 변경 등)을 남기는 행위
- 변경한 시간 순서대로 저장
- 영문과 숫자로 이루어진 40자리 이름으로 각 commit 구분
저장소
2-1) Remote Repository (원격저장소)
원격 저장소 서버에서 관리 (for 협업)
2-2) Local Repository (로컬저장소)
개인 컴퓨터 서버에 저장 (for 개인)
현재 commit한 소스코드
코드를 여러개로 복사한 후, 이전의 코드와는 독립적으로 개발하는 것
로컬 저장소의 수정사항을 원격 저장소에 업로드 하는 행위
원격 저장소에서 로컬 저장소로 다운로드 하는 행위
폴더
커밋을 실행하기 전의 저장소와 작업 트리에 존재하는 공간으로, 모든 변경사항이 포함된 파일들의 집합
- 인덱스에 존재하는 파일 중 선택적으로 commit
- branch에 기존 작업코드 복사하고 push하기
- branch 생성 후 이동 : git checkout -b expressPrac
- 확인 : git status
- push 하기 : git push origin expressPrac
=======
=======
commit : 저장소에 소스 코드의 일부의 최신 변경사항을 추가함으로써 이러한 변경사항을 저장소의 최상위 리비전(head revision)의 일부분으로 만들어주는 것