당신은 git add --patch <filename>
(또는 -p
짧게) 사용할 수 있으며 , git은 파일을 합리적인 "hunks"(파일의 일부)라고 생각하는 것으로 파일을 나누기 시작합니다. 그런 다음이 질문을 묻습니다.
Stage this hunk [y,n,q,a,d,/,j,J,g,s,e,?]?
각 옵션에 대한 설명은 다음과 같습니다.
- y 다음 커밋을 위해이 덩어리를 준비하십시오
- n 다음 커밋을 위해이 덩어리를 준비하지 마십시오
- q떠나다; 이 덩어리 또는 나머지 덩어리를 준비하지 마십시오
- a 파일에서이 덩어리와 모든 이후 덩어리를 준비하십시오.
- d 파일에서이 덩어리 또는 이후 덩어리를 스테이징하지 마십시오.
- g 갈 덩어리를 선택하십시오
- / 주어진 정규식과 일치하는 덩어리를 검색
- j 이 덩어리를 미결정 상태로 두십시오. 다음 미정 덩어리를 참조하십시오.
- J 이 덩어리를 미정의 상태로 두십시오, 다음 덩어리를보십시오
- k 이 덩어리를 미정의 상태로 두십시오.
- K 이 덩어리를 미정의 상태로 두십시오, 이전 덩어리를보십시오
- s 현재 덩어리를 작은 덩어리로 나누십시오
- e 현재 덩어리를 수동으로 편집
- ? 덩어리 도움말 인쇄
파일이 아직 저장소에없는 경우 먼저 할 수 있습니다 git add -N <filename>
. 이후에 계속할 수 있습니다 git add -p <filename>
.
이후에는 다음을 사용할 수 있습니다.
git diff --staged
올바른 변경을 수행했는지 확인
git reset -p
실수로 추가 된 덩어리를 스테이지 해제하기 위해
git commit -v
커밋 메시지를 편집하는 동안 커밋을 봅니다.
이것은 git format-patch
커밋 데이터를 .patch
파일 로 구문 분석 하는 명령과 는 매우 다릅니다 .
미래를위한 참조 : Git Tools-Interactive Staging