작업을 커밋할 때 권장사항
1. 하나의 커밋에는 한 단위의 작업을 넣도록 합니다.
- 한 작업을 여러 버전에 걸쳐 커밋하지 않습니다.
- 여러 작업을 한 버전에 커밋하지 않습니다.
2. 커밋 메시지는 어떤 작업이 이뤄졌는지 알아볼 수 있도록 작성합니다.
아래 명령어로 hunk별 스테이징 진행
- git add -p
- 옵션 설명을 보려면 ?입력 후 엔터
- y 또는 n로 각 헝크 선택
변경사항을 확인하고 커밋하기
- git commit -v
커밋 치어두기
- git stash
- git stash save 와 같음
- git stash -m 'Add Stash3'
- 메시지와 함께 스태시
원하는 시점, 브랜치에서 다시 적용
- git stash pop
원하는 것만 stash 해보기
- git stash -p
스태시 목록 보기
- git stash list
Stash 사용법 정리
git stash | 현 작업들 치워두기 | 끝에 save 생략 |
git stash apply | 치워둔 마지막 항목(번호 없을 시) 적용 | 끝에 번호로 항목 지정 가능 |
git stash drop | 치워둔 마지막 항목(번호 없을 시) 삭제 | 끝에 번호로 항목 지정 가능 |
git stash pop | 치워둔 마지막 항목(번호 없을 시) 적용 및 삭제 | apply + drop |
💡 git stash branch (브랜치명) | 새 브랜치를 생성하여 pop | 충돌사항이 있는 상황 등에 유용 |
git stash clear | 치워둔 모든 항목들 비우기 |
마지막 커밋 수정
- git commit --amend
git rebase -i (대상 바로 이전 커밋)
명령어설명
p, pick | 커밋 그대로 두기 |
r, reword | 커밋 메시지 변경 |
e, edit | 수정을 위해 정지 |
d, drop | 커밋 삭제 |
s, squash | 이전 커밋에 합치기 |
s, squash
- 첫 항목 뒤로 s 명령어 사용
- 메시지 수정 후 저장
커밋을 나누기
- e 명령어
- git reset HEAD~
- 변화들을 따로 스테이지 및 커밋
- git rebase --continue 로 종료
'형상관리 > Git' 카테고리의 다른 글
[git] detached HEAD 문제로 push가 되지 않을 경우 (1) | 2023.12.06 |
---|---|
git #6 Branch 보다 깊이 알기 (0) | 2023.01.06 |
git #4 원격저장소 사용하기 && 원격 충돌시 (0) | 2023.01.01 |
git #3 차원 넘나들기 && 충돌 해결 (0) | 2023.01.01 |
git #2 시간여행 (2) | 2022.12.31 |