git format-patch
git
쓰는 꼴
git format-patch [-<n>|<since>] [-o <dir>]커밋마다 메일 꼴 .patch 파일 하나씩을 만듭니다 — format-patch main은 main 자신이 아니라 main 이후의 커밋을 뜻합니다.
자주 쓰는 옵션
| 옵션 | 뜻 |
|---|---|
| -<n> | the last n commits, e.g. -3 |
| <since> | commits after that one, e.g. origin/main |
| -o <dir> | write the files into a directory |
| --stdout | one mbox stream on standard output |
| --cover-letter | add a 0000 summary mail |
| -v <n> | mark the series as v<n> of a re-roll |
| -s | add Signed-off-by |
예시
git format-patch -3writes 0001- to 0003- patch files for the last three commits
git format-patch origin/main --cover-letter -o outbox/a mailable series of everything not yet upstream
git format-patch -1 --stdout > fix.patchone commit as a single patch file
되돌리는 방법이 여럿이라 헷갈립니다 — 가리키는 곳을 옮기는 것과 새 커밋을 얹는 것은 다릅니다.
읽는 방법
- 대괄호 [ ]는 넣어도 되고 안 넣어도 되는 자리입니다.
- 점 셋 …은 여러 개를 이어 쓸 수 있다는 뜻입니다.
- 옵션은 대소문자를 가립니다 — -r과 -R이 다른 명령도 있습니다.
자주 묻는 것
Q. git format-patch은 무엇을 하나요?
커밋마다 메일 꼴 .patch 파일 하나씩을 만듭니다 — format-patch main은 main 자신이 아니라 main 이후의 커밋을 뜻합니다.
Q. 어떻게 치나요?
git format-patch [-<n>|<since>] [-o <dir>] — 대괄호는 생략할 수 있는 자리입니다.
Q. 옵션은 몇 개나 자주 쓰나요?
여기 정리한 것은 7개입니다. 전체 목록은 man git에 있습니다. 이 명령은 git 갈래입니다.
같이 보는 명령
man 페이지: man git-format-patch