![입력 라인 3에서 패치할 파일을 찾을 수 없습니다. [중복]](https://linux55.com/image/65267/%EC%9E%85%EB%A0%A5%20%EB%9D%BC%EC%9D%B8%203%EC%97%90%EC%84%9C%20%ED%8C%A8%EC%B9%98%ED%95%A0%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%5B%EC%A4%91%EB%B3%B5%5D.png)
diff
컨텍스트 줄 번호 1(옵션)이 포함된 명령을 사용하여 -c
패치를 생성했습니다 . 내 패치 파일의 내용:
*** /home/sk/abc/def/src/klm/a.py 2015-05-18 16:25:50.348398554 +0530
--- /opt/abc/def/ghi/klm/a.py 2015-05-18 14:27:13.860503469 +0530
***************
*** 72,73 ****
--- 72,74 ----
output, error, rCommand = "", "", ""
+ import subprocess
rCommand = self.copyCmd % (self.executor_hostname, self.testId, self.testId)
이 명령을 사용하여 패치를 적용하려고 하면,
cd /
patch -p0 < sg.patch
나는이 출력을 얻습니다.
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|*** /home/sk/abc/def/src/klm/a.py 2015-05-18 16:25:50.348398554 +0530
|--- /opt/abc/def/ghi/klm/a.py 2015-05-18 17:10:48.368670076 +0530
--------------------------
File to patch:
patch 명령이 두 번째 줄의 파일 이름을 패치할 파일로 사용하지 않는 이유는 무엇입니까?
답변1
루트 디렉터리에 절대 경로로 패치를 적용하고 이 -p0
옵션을 적용해야 합니다. 당신은 또한 볼 수 있습니다이 게시물.