공용 저장소의 변경 사항을 개인 빌드로 병합

Aug 19 2020

OSS클래스를 포함하는 버전 1.0에서 저장소 를 복제한다고 가정합니다 A. 서브 클래 싱 A만으로는 충분하지 않기 때문에 복사 A하여 A'수정합니다. 나중에 업데이트 된 버전을 포함하는 OSSversion 1.1에서 복제 A합니다. 에서 변경 / 업데이트를 A수정 된 사본으로 병합하려면 어떻게 A'해야합니까? 그러한 경우에 대한 표준 패턴이 있습니까?

답변

6 VonC Aug 21 2020 at 22:21

아이디어는 다음과 같습니다.

  • 사용하여 패치 작성 git diff: A # 1.0 1 # 1.0 사이를

    git diff 1.0 1.1 -- A > a.patch
    
  • 그런 다음 patch유틸리티를 사용하여 해당 패치 를 적용합니다 patch. 를 사용하여 diff를 적용 할 파일을 지정할 수 있습니다 .

    patch -p1 A' a.patch
    

Windows에서는 여기 와 같이 단순화 된 PATH를 사용하면 패치를 사용할 수 있습니다.

C:\git\>where patch
C:\prgs\gits\current\usr\bin\patch.exe