programing

Git를 설치하지 않고 git diff 패치를 적용하는 방법은?

bestprogram 2023. 5. 2. 23:02

Git를 설치하지 않고 git diff 패치를 적용하는 방법은?

클라이언트가 생성한 패치를 적용하는 방법은 해야 합니까?git diff깃을 설치하지 않은 상태에서?사용하려고 했습니다.patch항상 패치할 파일 이름을 묻습니다.

git diff > patchfile

그리고.

patch -p1 < patchfile

하지만 많은 사람들이 댓글과 다른 답변에서 알아차린 것처럼 패치는 추가, 삭제 및 이름 변경을 이해하지 못합니다.다른 방법은 없지만,git apply patchfile파일 추가, 삭제 및 이름 변경이 필요한 경우


2015년 12월 편집

의 최신 버전patch명령(2012년 9월에 릴리스된 2.7)은 이름 변경, 복사본, 권한 변경 및 심볼릭 디프(아직 이진 디프는 아님)를 포함하여 "diff --git" 형식의 대부분의 기능을 지원합니다.

따라서 현재/최신 버전을 사용하는 경우patch사용할 필요가 없습니다.git디프를 패치로 적용할 수 있습니다.

사용해 보십시오.

patch -p1 < patchfile

사용하다

git apply patchfile

가능하면.

patch -p1 < patchfile 

잠재적인 부작용이 있습니다.

git apply또한 파일 추가, 삭제 및 이름 변경에 대한 설명이 있는 경우 이 작업을 처리합니다.git diff포맷, 어느 것patch안 됩니다.마침내.git apply는 모든 것이 적용되거나 아무것도 적용되지 않는 "모두 실행 또는 모두 중단" 모델이지만 패치는 패치 파일을 부분적으로 적용하여 작업 디렉터리를 이상한 상태로 만들 수 있습니다.

사용합니다

patch -p1 --merge < patchfile

이렇게 하면 평소와 같이 충돌이 해결될 수 있습니다.

사용해 보십시오.

$ git apply file.diff

언급URL : https://stackoverflow.com/questions/3418277/how-to-apply-git-diff-patch-without-git-installed