병합 충돌 해결
두 분기 모두 동일한 행을 변경하면 충돌이 발생합니다. GitTree의 리졸버는 A 및 B의 두 버전을 나란히 표시합니다. 각 충돌에서 유지할 행을 선택하고 Output를 확인한 다음 Save를 확인한 다음 병합, 리베이스 또는 체리 선택을 계속합니다.
GitTree 무료로 작동: 로그인하면 모든 로컬 Git 기능이 제공됩니다.
시작하기 전에
- 충돌로 인해 병합, 리베이스, 체리 선택 또는 되돌리기가 중지되었습니다. 배너에는 그렇게 표시되고 계산됩니다.
어디서 찾을 수 있나요?
- 그래프 위의 배너: Resolve.
- 변경 사항 패널에는 충돌하는 파일이 먼저 나열됩니다. 하나를 선택하여 엽니다.
| 액션 | macOS | Windows 및 Linux |
|---|---|---|
| 파일의 다음 변경사항 | F7 | F7 |
| 파일의 이전 변경사항 | ⇧F7 | Shift+F7 |
단계
각각의 갈등을 결정
Conflict 1의 경우 A, B 또는 둘 다에 유지할 줄을 선택합니다. Keeps 1 of 1 lines는 귀하의 선택을 확인합니다. 무언가가 결정되자마자 갈등은 해결된 것으로 표시됩니다. Take Neither는 그 중 아무것도 유지하지 않습니다.
출력을 확인하세요
Output 창에는 저장될 파일이 표시되며, 아직 결정되지 않은 모든 충돌에 대한 메모와 함께 해당 페이지로 이동할 수 있는 Go to Conflict가 표시됩니다. 수정 사항을 직접 입력하려면 Edit Output를 사용하고, 공통 조상을 보려면 Show Base를 사용하세요.
저장하고 계속하세요
파일을 작성하고 해결됨으로 표시하려면 Save를 누르세요. 모든 파일이 해결되면 배너에서 Continue을 선택하여 작업을 완료합니다.
예상되는 결과
병합(또는 리베이스 단계)이 해결 방법에 따라 완료되고 배너가 사라집니다.
더 빠른 해결 방법
- 헤더의 A 또는 B 옆에 있는 상자는 해당 쪽에서 파일의 모든 충돌을 가져옵니다.
- Undo Choice 및 Redo Choice는 파일을 건드리지 않고 결정을 내려갑니다.
- Open in Merge Tool는 Git 구성에 설정된 외부 병합 도구에 파일을 전달합니다.
rerere를 켜면 Git은 이전에 동일한 충돌을 해결한 방법을 재사용합니다. GitTree는 Reused resolution이라고 말하고 이를 검토할 수 있습니다.
뭔가 잘못되면
"결과에는 여전히 충돌 표시 줄이 있습니다. 제거할 때까지 저장할 수 없습니다."
출력을 직접 편집했으며 <<<<<<< 또는 >>>>>>>과 같은 줄이 남았습니다. 이를 제거하거나 대신 상자와의 충돌을 결정하십시오.
"이 파일은 해결하는 동안 디스크에서 변경되었습니다."
다른 프로그램이 파일에 썼습니다. GitTree는 이전 선택 사항을 유지합니다. 지금 파일과 비교하거나, 출력으로 사용하거나, 삭제합니다.
질문
내 편은 어느 쪽인가요?
병합 중에 A는 현재 분기이고 B는 병합되는 분기입니다. 각 헤더는 커밋과 브랜치의 이름을 지정합니다. 리베이스하는 동안 그들은 교체됩니다. A는 리베이스하는 브랜치이고, B 커밋이 재생됩니다.
