git apply
git
쓰는 꼴
git apply [--check|-3] <patch>diff 파일을 지금 작업 파일에 입힙니다 — 커밋을 만들지 않고 패치에 적힌 작성자도 읽지 않으니, 메일로 받은 패치는 am으로 붙이는 편이 맞습니다.
자주 쓰는 옵션
| 옵션 | 뜻 |
|---|---|
| --check | report whether it would apply, change nothing |
| -3 | fall back to a three-way merge and leave conflict markers |
| --index | apply to the working tree and stage it |
| --cached | apply to the index only |
| -R | apply in reverse, undoing the patch |
| -p<n> | strip n leading path components |
| --stat | show what the patch touches |
예시
git apply --check fix.patchtells you if it fits before you try
git apply -3 fix.patchapplies it and leaves conflicts to resolve by hand
git apply -R fix.patchtakes an applied patch back out
되돌리는 방법이 여럿이라 헷갈립니다 — 가리키는 곳을 옮기는 것과 새 커밋을 얹는 것은 다릅니다.
읽는 방법
- 대괄호 [ ]는 넣어도 되고 안 넣어도 되는 자리입니다.
- 점 셋 …은 여러 개를 이어 쓸 수 있다는 뜻입니다.
- 옵션은 대소문자를 가립니다 — -r과 -R이 다른 명령도 있습니다.
자주 묻는 것
Q. git apply은 무엇을 하나요?
diff 파일을 지금 작업 파일에 입힙니다 — 커밋을 만들지 않고 패치에 적힌 작성자도 읽지 않으니, 메일로 받은 패치는 am으로 붙이는 편이 맞습니다.
Q. 어떻게 치나요?
git apply [--check|-3] <patch> — 대괄호는 생략할 수 있는 자리입니다.
Q. 옵션은 몇 개나 자주 쓰나요?
여기 정리한 것은 7개입니다. 전체 목록은 man git에 있습니다. 이 명령은 git 갈래입니다.
같이 보는 명령
man 페이지: man git-apply