diff --git a/doc/history/2026-09-14-6차.md b/doc/history/2026-09-14-6차.md index d0303c4..98274cf 100644 --- a/doc/history/2026-09-14-6차.md +++ b/doc/history/2026-09-14-6차.md @@ -797,3 +797,39 @@ Allman 은 모두 새 줄(Visual Studio 기본값과 같다). 처음에는 Defau (자동 조작은 파일 콤보 항목이 화면에 보이는 것만 만들어져 처음에 두 파일을 못 골랐다. 항목을 이름으로 불러와 고르게 고쳐 다시 쟀다.) 빌드 경고 0 · 오류 0. + +## B-8. 병합 커밋 뒤 파일 비교 탭이 어정쩡하게 남는다 (2026-09-14, 다시 나지 않음 - 닫음) + +지시서의 증상: 병합 커밋 뒤 목록이 비고, 3분할 틀에 병합과 상관없는 파일(`Common/Util/Unit103.cs`)이 BASE 칸에만 뜨고 언어는 "평문". +판정 기준: 병합 커밋이 끝나면 병합 전과 같은 보통 상태(선택 커밋 = 방금 만든 병합 커밋). + +### 두 흐름으로 다시 해 봤다 (새로 만든 저장소, 코드는 고치지 않음) + +**① Git 으로 모두 풀고 Git 탭에서 [병합 커밋].** 그 사이 파일 비교 탭은 `Io/Unit12.cs` 를 네 칸으로 열어 둔 채. + +| 때 | 파일 목록 | 칸 | BASE 머리글 | 언어 · 요약 | 병합 진행 중 표시 | +|---|---|---|---|---|---| +| 병합 전 | 304 | 두 칸 | `d19ecb7 · Common/Util/Unit103.cs` | C# · 차이 없음 | 없음 | +| 병합 중 | 24(충돌만) | 네 칸 | `(merge base) Io/Unit12.cs` | C# · 남은 충돌 1개 | 있음 | +| **병합 커밋 뒤** | **304** | **두 칸** | **`3019433 · Io/Unit12.cs`** (방금 만든 병합 커밋) | **C# · 차이 없음** | **없음** | + +화면에서도 수정 이력 맨 위(병합 커밋)가 골라져 있고 "Selected Commit 3019433 Merge branch 'feature/theirs' …". + +**② C-1 때처럼 마지막 충돌들을 파일 비교 탭에서 푼 뒤 커밋.** Git 으로 두 파일만 남기고, 탭에서 `Recipe/ToBeDeletedByMe.cs` 는 [파일 지우기], `Io/Unit12.cs` 는 Take Theirs → [해결로 저장] → Git 탭 [병합 커밋]. + +| 때 | 파일 목록 | 칸 | BASE 머리글 | 언어 · 요약 | 병합 진행 중 표시 | +|---|---|---|---|---|---| +| 충돌 2개 남음 | 2 | 네 칸 | `(merge base) Io/Unit12.cs` | C# · 남은 충돌 1개 | 있음 | +| [파일 지우기] 뒤 | 1 | 네 칸 | `(merge base) Io/Unit12.cs` | C# · 남은 충돌 1개 | 있음 | +| [해결로 저장] 뒤(충돌 0 · MERGE_HEAD 있음) | 304 | 두 칸 | `1e6410d · Io/Unit12.cs` | C# · 남은 차이 1줄 | 있음 | +| **병합 커밋 뒤** | **304** | **두 칸** | **`3403732 · Io/Unit12.cs`** (방금 만든 병합 커밋) | **C# · 차이 없음** | **없음** | + +### 판단 + +두 흐름 모두 판정 기준대로다. 5차 C-1 때 난 증상은 그 뒤 고친 것들로 없어진 것으로 본다. + +- **B-1** — 새로고침 뒤 게이트가 풀릴 때까지 기다렸다 목록을 다시 세운다(예전에는 건너뛰어 목록이 빈 채로 남았다). +- **A-3** — 충돌이 아닌 파일을 열면 충돌 때문에 켠 네 칸을 접는다(예전에는 네 칸 틀이 남았다). +- **A-2 · B-2** — 목록을 다시 세울 때 빈 목록으로 갈아엎지 않고, 실린 파일을 기준으로 다룬다. + +코드 변경 없음. 흐름 ② 는 D-1(처음부터 다시 끝까지)에서 한 번 더 본다. diff --git a/doc/history/changelog.md b/doc/history/changelog.md index c555edb..ac97c02 100644 --- a/doc/history/changelog.md +++ b/doc/history/changelog.md @@ -8,6 +8,7 @@ | 날짜 | 항목 | 커밋 | |---|---|---| +| 2026-09-14 | **6차 B-8 닫음** — 병합 커밋 뒤 파일 비교 탭이 어정쩡하게 남던 증상이 다시 나지 않음. Git 으로 풀고 커밋 · 탭에서 마지막 충돌을 풀고 커밋 두 흐름 모두 목록 304 · 두 칸 · 선택 커밋 = 병합 커밋. B-1 · A-3 에서 없어진 것으로 봄 | 아래 | | 2026-09-14 | **6차 B-7** — 병합 중 상태바 인코딩 · 줄바꿈을 충돌 표시가 든 워킹트리가 아니라 내 쪽(ours) 파일로("UTF-8 · 혼합" → "UTF-8 (BOM) · CRLF"). 네 칸 요약을 "남은 충돌 N개 · 받을 변경 M줄" 로, 범례 수를 먼저 세어 한 박자 늦던 것도 고침 | 아래 | | 2026-09-14 | **E-1 C# 코드 스타일 맞춤** — AURORA(형식 · 메서드만 새 줄, `} else {`) / Allman(모두 새 줄)로 중괄호 줄바꿈을 맞춘 뒤 비교. 두 칸 · 네 칸 · mergetool · 폴더 비교, 설정. 스타일만 바뀐 편집은 파일을 바꿀 때 묻지 않음. StyleTest 78건 | 아래 | | 2026-09-14 | **E-2 시연 재료** — `demo\make-demo.ps1` · `tools\DemoMaker`. 지어낸 코드로 폴더 비교 · 스타일 · mergetool · 큰 파일 · 병합 저장소(`D:\MergeHubDemo\repo`) | 아래 | diff --git a/doc/web/index.html b/doc/web/index.html index 423704c..6b9230c 100644 --- a/doc/web/index.html +++ b/doc/web/index.html @@ -257,7 +257,7 @@ figcaption{font-size:.82rem;color:var(--ink-3);margin-top:6px}
6차 지시서의 남은 세 항목과 일부러 미뤄 둔 것. 6차 규칙대로 B → C → D 순서로 간다.
+6차 지시서의 남은 두 항목과 일부러 미뤄 둔 것. 6차 규칙대로 C → D 순서로 간다.
15개 항목 중 A 다섯 · B-1 ~ B-7 이 끝났다(B-6: 같은 줄 충돌 15개 22.0초 → 1.2초 · B-7: 병합 중 상태바가 내 쪽 파일 기준, 남은 충돌 수). 남은 것은 아래 순서다.
+15개 항목 중 A 다섯 · B 여덟이 끝났다(B-8 은 다시 나지 않아 코드 변경 없이 닫음 ·B-6: 같은 줄 충돌 15개 22.0초 → 1.2초 · B-7: 병합 중 상태바가 내 쪽 파일 기준, 남은 충돌 수). 남은 것은 아래 순서다.
| 항목 | 상태 | 무엇이 문제인가 | 끝났다고 볼 기준 |
|---|---|---|---|
| B-7 상태바가 병합 중에 믿을 수 없는 값을 보인다 | 완료 | 인코딩 · 줄바꿈을 충돌 표시가 들어간 워킹트리 파일에서 읽어, 양쪽 CRLF 인 파일도 “UTF-8 · 혼합”. “남은 차이 6줄” 이 충돌을 다 정해도 그대로. | 병합 중 상태바 인코딩 · 줄바꿈이 ours 기준. 상태바에 남은 충돌 수가 나오고 풀면 준다. |
| B-8 병합 커밋 뒤 파일 비교 탭이 어정쩡하게 남는다 | 대기 | 목록이 비고, 병합과 상관없는 파일이 BASE 칸에만 뜨고 언어는 “평문”. | 병합 커밋이 끝나면 병합 전과 같은 보통 상태(선택 커밋 = 방금 만든 병합 커밋). |
| B-8 병합 커밋 뒤 파일 비교 탭이 어정쩡하게 남는다 | 완료 | 목록이 비고, 병합과 상관없는 파일이 BASE 칸에만 뜨고 언어는 “평문”. | 병합 커밋이 끝나면 병합 전과 같은 보통 상태(선택 커밋 = 방금 만든 병합 커밋). |
| C-1 로그와 목록 다듬기 | 대기 | “충돌 22건” 로그가 두 번. 충돌 종류 표시가 들쭉날쭉(상대쪽 삭제만). 풀린 개수 없음. 로그가 CP949 를 “ks_c_5601-1987” 로 적음. | 로그 한 번. 종류(양쪽 수정 · 상대 삭제 · 내가 삭제 · 양쪽 새 파일)와 풀린 개수. 인코딩 이름이 상태바와 같음. |
| D-1 병합을 처음부터 다시 끝까지 | 대기 | A ~ C 를 고친 뒤 시험 저장소(C1Repo)를 새로 만들어 같은 병합을 다시 한다. 5차 C-1 과 같은 표로 23가지 중 무엇이 사라졌는지 적는다. | MergeHub 만으로 병합 커밋까지. 커밋된 파일 중 줄끝이 바탕과 달라진 파일 0개. A 다섯 가지가 다시 나지 않는다. 새로 걸린 것은 고치지 말고 적어 7차로. |
demo\make-demo.ps1 — 폴더 비교 · 스타일 · mergetool · 큰 파일 · 병합 저장소