텍스트 병합
텍스트 병합은 파일의 두 버전에서 나온 변경 사항을 하나의 편집 가능한 결과로 결합합니다. 두 변경이 서로 호환되지 않아 판단이 필요할 때 충돌이 발생합니다.
레이아웃

이 화면은 같은 파일의 세 가지 버전을 보여줍니다.
- 왼쪽 창은 내 버전 — 로컬 변경 사항입니다.
- 가운데 창은 결과 — 편집할 수 있는 유일한 창입니다.
- 오른쪽 창은 들어온 버전 — 원격 변경 사항입니다.
기준
네 번째 버전인 기준도 있습니다. 이는 양쪽이 출발점으로 삼은 원래 버전입니다. 이는 Git의 3-way 병합 모델과 같습니다:
Local → Base ← Remote
↓
Result
ABDiff에서는 가운데 창을 결과와 기준 사이로 전환하여 무엇이 바뀌었는지 파악할 수 있습니다.

충돌
충돌은 양쪽이 같은 줄을 서로 다르게 수정할 때 발생합니다. 예를 들어 원래 값이 “blue”였는데, 한쪽은 “green”, 다른 쪽은 “red”로 바뀐 경우입니다. Git은 어느 변경이 맞는지 판단할 수 없으므로 수동으로 해결해야 합니다.
이런 일은 두 사람이 같은 줄을 동시에 편집할 때 발생합니다. 변경이 겹치지 않으면 Git이 자동으로 병합합니다. 겹치면 충돌을 수동으로 해결해야 합니다.
Git 통합을 설정해 두었다면 Git이 충돌을 발견할 때 ABDiff가 실행됩니다. 결과 영역은 미해결 상태로 남아 있으며, 그 내용을 직접 정해야 합니다. 선택지는 세 가지입니다:
- 로컬 버전으로 해결
- 들어온 버전으로 해결
- 또는 직접 결과 작성
충돌 해결
결과를 채택하려면 충돌 블록을 오른쪽 클릭한 다음 내 변경 적용 또는 상대 변경 적용을 선택하십시오.
직접 결과를 만들려면:
- 선택한 줄을 편집합니다(↩︎ 를 누르거나 더블클릭)
- 또는 양쪽 중 한쪽에서 줄을 복사합니다(오른쪽 클릭 ▸ 선택 영역을 결과에 복사)
팁:
- 선택 영역을 확장(⇧↑ / ⇧↓)하면 여러 줄을 한 번에 복사할 수 있습니다
- 모든 변경은 ⌘Z로 되돌릴 수 있습니다
마무리
완료되면 파일을 저장하십시오(파일 ▸ 저장 또는 ⌘S). 그러면 Git은 충돌이 해결된 것으로 판단합니다.
충돌을 해결하지 않으려면 저장하지 말고 파일을 닫으면 됩니다.
편집 및 탐색
탐색
| 동작 | 단축키 |
|---|---|
| 이전 / 다음 행 | ↑ / ↓ |
| 이전 / 다음 창 | ← / → |
| 첫 번째/마지막 행으로 이동 | ⌘↑ / ⌘↓ |
| 이전 변경 / 다음 변경 | ⌥↑ / ⌥↓ |
| 이전 / 다음 헝크 | ⌥↑ / ⌥↓ |
| 다른 창으로 전환 | ⇥ |
복사
| 동작 | 단축키 |
|---|---|
| 오른쪽으로 복사 | ⌘→ |
| 왼쪽으로 복사 | ⌘← |
| 선택 범위 연장 | ⇧↑ / ⇧↓ |
| 내 변경 적용 | ⇧⌘→ |
| 상대 변경 적용 | ⇧⌘← |
선택된 줄은 회색 사각형으로 표시됩니다. 헝크는 연속된 충돌 / 변경 블록입니다. 복사 동작은 결과 창을 실제로 변경할 수 있고, 선택이 실제 줄 위에 있을 때만 활성화됩니다. 행을 Shift-클릭해도 같은 창 안에서 현재 선택 영역을 확장할 수 있습니다.
변경 사항을 복사하려면:
- 현재 선택한 줄을 복사하려면 복사 명령을 사용합니다.
- 선택한 줄이 들어 있는 블록 전체를 복사하려면 전체 헝크 복사를 사용합니다.
- 현재 선택 영역 안에서 오른쪽 클릭하면 선택이 유지되고, 다른 곳에서 오른쪽 클릭하면 먼저 그 행이 선택됩니다.
- 행 컨텍스트 메뉴에는 Shift+Arrow 이동이 가능한 경우 선택 영역 위로 확장 / 선택 영역 아래로 확장 도 표시됩니다.
- 선택한 줄에서는 오른쪽 클릭하거나 편집 메뉴에서 내 변경 적용 / 상대 변경 적용을 사용할 수 있습니다.
모든 복사 작업은 ⌘Z로 되돌릴 수 있습니다.
편집
| 동작 | 단축키 |
|---|---|
| 선택한 결과 행 편집 시작 | Return |
| 결과 행을 직접 편집 시작 | 행을 더블클릭 |
| 확정하고 다음 편집 가능한 행으로 이동 | Return (편집 중) |
| 확정하고 편집 모드 종료 | Command-Return |
| 현재 행 버퍼를 취소하고 편집 모드를 종료 | Esc 또는 Command-. |
행을 더블클릭해서도 편집을 시작할 수 있습니다. 모든 편집 작업은 ⌘Z로 되돌릴 수 있습니다.
보기 옵션
텍스트 병합은 비교가 계산되거나 표시되는 방식을 변경하는 옵션을 제공합니다. 이 옵션들은 옵션 메뉴에서 사용할 수 있습니다.
- 무시 패턴은 잡음이 많은 차이를 줄입니다. 무시 패턴을 참조하십시오.
- JSON 정규화는 원시 포맷 대신 정규화된 JSON 구조를 비교합니다.
- 의미 단위 줄 분할 기본값은 설정에서 구성되며, 이 옵션 메뉴에서는 변경하지 않습니다.
이러한 설정은 매칭 및 시각화에 영향을 미치며, 파일을 직접 편집하지 않습니다.