일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- caching
- CSS
- vue3
- SSR
- 비동기
- web vital
- CloudFlare
- Testing
- 선택자
- svelte
- aws
- JavaScript
- ts error
- csr
- Cypress
- TLS
- ViTE
- vue-cli
- https
- custom command
- rendering
- typeScript
- e2e
- http3
- api test
- devtools
- import.meta.env
- msw
- QUIC
- vue
- Today
- Total
Develop Note by J.S.
[Git] Reset 활용 본문
1. GIT 트리(3단계)
- GIT은 아래 3개의 트리(파일의 묶음)를 관리하는 시스템입니다.
1) HEAD : 현재 브랜치를 가리키는 포인터이며, 브랜치의 마지막 commit을 가리킵니다.
2) Index : Staging Area라고도 하며 git add 명령어로 stage에 작업한 파일이 올라가는 가상의 공간
3) Working Directory : 내용이 수정된 파일이 존재하는 공간 (Untracked files)
* Untracked files - 이력 추적 대상이 아닌 파일, git add로 Index에 올리면 추적 대상으로 등록됩니다.
2. Work Flow
1) 파일생성 or 수정(Working Directory)
2) git add [files] (Index)
3) git commit (HEAD)
3. reset의 역할
1) 1단계 - HEAD의 이동 (--soft)
-> HEAD는 현재 브랜치의 마지막 커밋을 가리키는 포인터입니다. reset은 이전 커밋을 가리키도록 HEAD 포인터를 변경합니다.
-> git reset --soft HEAD^ 명령어 실행 시 바로 이전 커밋으로만 되돌리고, 파일은 add(staging) 상태로 유지합니다.
2) 2단계 - Index 업데이트 (--mixed : default option)
-> 작업파일이 Stage에 올라간 상태인 Index를 HEAD와 함께 이전으로 되돌립니다 (git add 명령 실행전 상태)
-> git reset --mixed HEAD^ 명령어 실행 시 바로 이전 커밋으로 HEAD를 돌리면서 add 또한 되돌립니다(Untracked).
3) 3단계 - Working Directory 업데이트 (--hard : 사용시 주의)
-> HEAD, Index, Working Directory 모두 이전 커밋으로 되돌립니다.
-> git reset --hard HEAD^ 명령어 실행 시 이전 커밋으로 되돌리며 작업한 내용까지 모두 되돌려져 주의가 필요합니다.
4. commit 지정 기호
- 특정 commit을 지정할때 사용하는 기호로써 '~(틸트, 물결기호)' 및 '^(캐럿, 삽입기호)'가 있다.
- '~(틸트)' 기호와 숫자를 HEAD뒤에 붙여 몇 세대 앞의 커밋을 가리킬 수 있다. ex) HEAD~2 (2세대 이전 커밋)
- '^(캐럿)' 기호와 숫자를 함께 사용하면 브랜치 병합 이전 같은 세대의 commit 중 몇번째 commit인지 지정한다.
- 바로 이전 commit을 나타내는 기호 : HEAD^, HEAD~, HEAD~1
참고사이트
https://git-scm.com/book/ko/v2/Git-%EB%8F%84%EA%B5%AC-Reset-%EB%AA%85%ED%99%95%ED%9E%88-%EC%95%8C%EA%B3%A0-%EA%B0%80%EA%B8%B0
https://backlog.com/git-tutorial/kr/stepup/stepup1_3.html
'DevOps > Git' 카테고리의 다른 글
[Git] Git Branch 전략 (0) | 2023.07.07 |
---|