본문으로 건너뛰기
yutils
예시

입력 (좌·우 텍스트)

좌:
name: yutils
version: 0.1.0

우:
name: yutils
version: 0.2.0

출력 (Unified Diff Patch)

--- a
+++ b
@@ -1,2 +1,2 @@
 name: yutils
-version: 0.1.0
+version: 0.2.0

참고

표준 unified diff 형식. `git apply` · `patch` 명령으로 그대로 적용 가능. 헤더 `--- a` / `+++ b` 는 파일명 placeholder.

사용법 / 자주 묻는 질문

이런 경우 사용하세요

  • 두 텍스트 사이의 git apply 가능한 patch 생성
  • 코드 리뷰 시 임시 변경분을 patch 로 떨궈 동료에게 전달
  • AI 가 제안한 변경을 unified diff 로 정리해 검토
  • 환경별 설정 차이를 patch 로 저장
  • DR(Disaster Recovery) 시 빠른 fix 를 patch 로 보관

자주 묻는 질문

Q.결과를 `git apply` 로 바로 적용할 수 있나요?
A.예. 표준 unified diff 라 `git apply patch.diff` 로 적용됩니다. 단, 헤더의 `--- a` / `+++ b` 를 실제 파일 경로로 바꾸세요.
Q.context 라인 수(`-U`)를 조정할 수 있나요?
A.기본 3 줄(unified default). 옵션으로 변경 가능합니다 — 큰 context 는 사람이 읽기 좋고 작은 context 는 patch 가 작아짐.
Q.binary 파일도 patch 만들 수 있나요?
A.아닙니다. 본 도구는 텍스트만 다룹니다. 이미지 등 바이너리는 별도 도구가 필요.
재미있는 사실
  • Unix `diff` 의 핵심 알고리즘 (LCS, Longest Common Subsequence 기반) 은 1976년 Bell Labs 의 James Hunt 와 Doug McIlroy 가 만들었습니다. McIlroy 는 Unix 파이프 발명자로도 유명 — diff 가 그 사람 손에서 나왔다는 게 우연이 아닙니다.

    Hunt-McIlroy (1976)
  • 1986년 Eugene Myers 가 더 빠른 O(ND) 알고리즘을 발표 — 현재 대부분의 modern diff 도구 (git diff 기본, GNU diffutils) 가 이 알고리즘 또는 변형을 사용합니다. 'Myers diff' 가 사실상 산업 표준.

    jcoglan — Myers diff
  • Unified diff 형식 (`+`, `-`, `@@` 라인) 은 1990년 Wayne Davison 이 GNU diff 에 추가했습니다. Larry Wall 의 patch (1985) 가 context diff 만 지원하던 시절 — 지금 모든 patch 파일·git diff·코드 리뷰의 표준 형식이 됐습니다.

    Wikipedia — Unified diff