본문으로 건너뛰기
yutils
예시

입력 (좌·우 텍스트)

좌:
첫 번째 줄
두 번째 줄
세 번째 줄

우:
첫 번째 줄
두번째 줄 변경됨
세 번째 줄

출력 (라인 단위 diff)

  첫 번째 줄
- 두 번째 줄
+ 두번째 줄 변경됨
  세 번째 줄

참고

기본은 라인 단위 비교. 같은 줄에서 일부 글자만 다르면 `-` / `+` 두 줄로 표시됩니다. 좌우 split 뷰와 inline unified 뷰를 토글할 수 있습니다.

사용법 / 자주 묻는 질문

이런 경우 사용하세요

  • 두 버전의 설정 파일 · 로그 · 이메일을 빠르게 비교
  • AI 출력 두 번을 나란히 두고 차이 확인
  • 코드 리뷰 전 본인 변경분 셀프 체크
  • 번역 일관성 검증 — 같은 원문 다른 번역본 비교
  • split view / unified view 토글로 가독성 선택

자주 묻는 질문

Q.공백·줄바꿈도 차이로 잡히나요?
A.예. 라인 단위 비교라 trailing space · CRLF/LF 차이도 그대로 노출됩니다. 정규화가 필요하면 입력 단계에서 trim 하세요.
Q.단어/글자 단위 비교는 안 되나요?
A.현재 도구는 라인 단위 기준입니다. 더 미세한 diff 가 필요하면 동일 줄을 비교하거나, JSON 데이터는 json-diff 도구를 쓰세요.
Q.대용량 텍스트도 비교되나요?
A.수천 줄까지는 무리 없이 동작합니다. 단, 브라우저에서 처리하므로 메가바이트급 입력은 권장하지 않습니다.
Q.대소문자 무시를 켰더니 변경 없는 줄이 오른쪽 표기로 보입니다.
A.의도된 동작입니다. 대소문자만 다른 줄은 '같은 줄' 로 묶이는데, 한 줄로 보여 줘야 하므로 **오른쪽(새 버전)** 텍스트를 표시합니다. 실제로 달라진 줄은 양쪽 모두 원본 표기 그대로 나옵니다 — 예전처럼 입력 전체가 소문자로 바뀌지는 않습니다.
재미있는 사실
  • Text diff 의 'minimum edit distance' 문제는 1974년 Wagner-Fischer 알고리즘이 처음 해결 — O(mn) DP. 1986년 Myers 의 O(ND) 알고리즘이 실용적 개선으로 git diff 의 default 가 됐어요. 'similar text 일 때 빠르다' 가 핵심.

    Wikipedia — Edit distance
  • 'diff' 가 분 단위 짧은 변경 (코드 리뷰 정도) 에 빠른 이유는 LCS (Longest Common Subsequence) 가 대부분 길고 변경 부분이 작기 때문입니다. 두 완전히 다른 문서를 diff 하면 O(N²) 까지 갈 수 있어 느려져요 — git 의 `--patience` 옵션이 이 케이스 보완.

    git — diff options
  • Diff 의 단위는 줄·단어·문자 어느 단계도 가능. 코드 diff 는 줄 단위, 문서 diff (Google Docs / VS Code 의 inline diff) 는 단어 단위, 정밀한 분석 (DNA / 자연어 처리) 은 문자 단위 — 같은 알고리즘에 입력만 다른 토큰 단위로 줘서 처리.

    Wikipedia — diff algorithm