Search
Duplicate

git 변경사항 잘게 쪼개서 add 하기

간단소개
파일의 변경사항을 add하고 싶을 때 해당 파일의 일부분만 올리고 싶을 때를 위해…
팔만코딩경 컨트리뷰터
ContributorNotionAccount
주제 / 분류
git
Scrap
태그
9 more properties
아마 대부분 git에 commit 할 때 변경사항 전체를 한 번에 올리기 위해 git add . 을 하거나 원하는 파일만 add를 하는 경우가 많을 텐데요. 이번에 파일 전체를 add하는 것이 아니라 그 중 일부만 올리고 싶을 때에는 어떻게 해야할 지 얘기해보려고 합니다.

-p 옵션

바로 git add할 때 -p옵션을 사용하면 됩니다.
-p 옵션을 사용하면 변경사항 단위로만 staging area에 올려주는데 이러한 변경사항 단위를 Hunk라고 합니다!
현재 제가 작업 중인 파일을 예로 들어서 설명하겠습니다.
현재 수정된 3개의 파일을 git add -p를 통해 하나씩 확인하면서 staging area에 올려보겠습니다.
위에서 보시는 것처럼 변경된 부분을 보여주면서 add를 할 지 말 지 물어봅니다.
이 때 해당 변경사항을 올리고 싶으면 y(yes), 올리지 않고 건너뛰고 싶으면 n(no), 올리고 싶은 부분을 다 올려 추가로 더 이상 올릴 게 없다면 q(quit)로 나가시면 됩니다.
만약 지금처럼 변경사항이 너무 클 때에는 s(split)로 변경사항을 더 쪼갤 수 있습니다.
그럼 보시다시피 hunk가 더 쪼개져서 자세히 물어보는 것을 확인할 수 있습니다.
각 옵션의 역할은 위와 같고 ‘?’를 쳐서 확인할 수 있습니다.
이 기능이 과제를 하면서 많이 쓰일지는 모르겠지만 그래도 알아두면 유용하니 알아두면 좋겠습니다.