🐙Snapshot

용량이 큰 프로젝트를 다룰 떄 더 빠르게 처리가 가능함
🐙분산 버전 관리

중앙집중식 : 원격중심( 로컬에서 할 수 있는 것이 제한적임
분산 버전 관리 : (전체 깃 커밋 / 브랜치, 등) 모든 구성원들의 깃 상태를 로컬에서 관리 가능
+ vcs : version Control System : 파일의 변화를 추적하고 관리하는 시스템
🐙 깃의 3가지 공간

Working directory
- untracked: Add된 적 없는 파일, ignore 된 파일
- tracked: Add된 적 있고 변경 내역이 있는 파일
git add 명령어
Staging area
- 커밋을 위한 준비 단계
git commit 명령어
Repository
- 커밋된 상태
git rm
=> git rm = rm + git add
파일 삭제 및 add
git mv
=> git mv = mv + git add
파일 rename 및 add
git restore --staged ( 파일명 )
파일을 staging area에서 working directory로
( 지금 커밋에 포함시키고 싶지 않은 문서 삭제)
reset의 세 가지 옵션
- --soft: repository에서 staging area로 이동
- --mixed (default): repository에서 working directory로 이동
- --hard: 수정사항 완전히 삭제
🐙 HEAD

Git의 HEAD
현재 속한 브랜치의 가장 최신 커밋
switch : 브랜치 이동
checkout : 앞뒤 이동
git checkout HEAD^ : ^ 또는 ~: 갯수만큼 이전으로 이동
+ ⭐️ 커밋 해시를 사용해서도 이동 가능 (git checkout (커밋해시))
+ git checkout - : (이동을) 한 단계 되돌리기
HEAD 사용하여 reset하기
git reset HEAD(원하는 단계) (옵션)
🐙 fetch vs pull
- fetch: 원격 저장소의 최신 커밋을 로컬로 가져오기만 함
- pull: 원격 저장소의 최신 커밋을 로컬로 가져와 merge 또는 rebase
fetch한 내역 적용 전 살펴보기
- 원격의 main 브랜치에 커밋 추가
* git checkout origin/main으로 확인
- 원격의 변경사항 fetch
* git checkout origin/main으로 확인
* pull로 적용
원격의 새 브랜치 확인
- git checkout origin/(브랜치명)
- git switch -t origin/(브랜치명)
'깃,깃허브' 카테고리의 다른 글
👩🏻💻 현업 "수행 프로젝트" 정리 (0) | 2024.08.25 |
---|---|
⛳️ 현업 '계약 프로젝트' 정리 (0) | 2024.08.24 |
🐙제대로 파는 Git & GitHub 🐈 - 4. GitHub 사용하기 (1) | 2023.12.26 |
🐙제대로 파는 Git & GitHub 🐈 - 3.차원 넘나들기 (0) | 2023.12.25 |
🐙제대로 파는 Git & GitHub 🐈 - 2.시간 여행하기 (0) | 2023.12.24 |