본문 바로가기

공부하자/GIT

GIT 변경된 파일들만 따로 가져오고 싶을 때

GIT으로 커밋을 하고 머지를 하면서 작업을 하다보면 특정 커밋에서 부터 또 다른 커밋까지 변경된 파일만 가져오고 싶을 때가 있다.

PHP처럼 소스가 패킹작업 없이 바로 서버에 복사되는 형태일 때 패치를 해야할 경우가 그러한데 그럴 때 유용하게 사용할 수 있다.

 

아래와 같이 사용하면 되는데 대괄호 안의 값은 직접 입력해야하는 값이다(입력시 대괄호는 필요없다).


 

git archive -o [파일명].zip [종료커밋값] $(git diff --name-only [시작커밋값])

 

  • 파일명 : 저장할 ZIP 파일명.
  • 종료커밋값 : 저장할 마지막 커밋 해시값
  • 시작커밋값 : 저장할 시작 커밋 해시값

 

예시)

git archive -o patch.zip 825ea29f92c89f07ea516c0ca1e715bc4c0cd854 $(git diff --name-only b3b6b488bc00dbe48e3e994a716087ab13e758ca)