9차 B-1: 반영하며 넣은 머지 주석 줄을 처음부터 다시 정렬한 모양으로
네 칸에서 Take 하면 넣는 주석 줄이 "추가"(파랑)였다가 다시 정렬하면 "무시"(회색)가 됐고, LOCAL(Mine) 칸에 내 파일에 없는 주석 글이 번호 없이 보였다. 사용자 결정 "처음부터 무시 색". - InsertNoteAbove: IsIgnored = Rules.IsFiltered(주석), 네 칸이면 SetThreeWay(null...) 로 Mine 빈 자리 - 규칙 "머지 주석 무시" 를 끄면 지금처럼 추가 - 하네스 NoteTest +5 (69건), 22벌 1,122건 통과, 빌드 경고 0 오류 0 확인: Weld/Unit1.cs Take Theirs 직후 무시 1 · 추가 0, [Aa] 로 두 번 다시 정렬해도 같음, Undo · Redo 가 주석 줄을 걷고 다시 넣음, 저장 내용(주석 1줄 · 3788줄) 그대로. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
5710e522bb
commit
f02c3e8049
@ -105,3 +105,52 @@
|
|||||||
|
|
||||||
- 자동 조작 쪽: 되풀이 스크립트가 처음에 한 회차만 돌았다. PowerShell 변수 이름은 대소문자를 가리지 않아 안쪽 반복 횟수 `$rounds` 가 회차 수 `$Rounds` 를 덮었다. 이름을 바꿔 다시 돌렸다.
|
- 자동 조작 쪽: 되풀이 스크립트가 처음에 한 회차만 돌았다. PowerShell 변수 이름은 대소문자를 가리지 않아 안쪽 반복 횟수 `$rounds` 가 회차 수 `$Rounds` 를 덮었다. 이름을 바꿔 다시 돌렸다.
|
||||||
- Git 탭에서 고른 커밋을 파일 비교 탭이 새로고침 전까지 안 따라오는 것(A-1 에 적음)은 그대로다.
|
- Git 탭에서 고른 커밋을 파일 비교 탭이 새로고침 전까지 안 따라오는 것(A-1 에 적음)은 그대로다.
|
||||||
|
|
||||||
|
## B-1. MERGED 칸에서 반영하며 넣은 주석 줄이 다시 정렬하면 "무시" 색이 된다 (2026-09-17, 완료)
|
||||||
|
|
||||||
|
사용자 결정(2026-09-17): **처음부터 "무시" 색.** ("머지 반영함" 색으로 계속 · 그대로 둔다는 고르지 않음.)
|
||||||
|
|
||||||
|
### 고치기 전에 다시 났다 (새로 만든 저장소, MergeHub 로 병합 → `Weld/Unit1.cs` 를 [3분할로 열기])
|
||||||
|
|
||||||
|
첫 충돌(101행 `Power100`)에서 Take Theirs → 규칙 [Aa 구분] 을 눌러 다시 정렬 → 한 번 더 눌러 되돌림.
|
||||||
|
|
||||||
|
| 때 | 범례 | 101행 주석 줄 | LOCAL(Mine) 칸 |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 연 뒤 | 무시 0 · 추가 0 · Conflict 6 · 총 3787줄 | - | - |
|
||||||
|
| Take Theirs 직후 | 머지 반영함 1 · **추가 1** · 무시 0 · Conflict 5 · 총 3788줄 | **추가(파랑)** | 번호 없이 **주석 글이 보임**(내 파일에 없는 줄) |
|
||||||
|
| 다시 정렬 뒤 | 머지 반영함 1 · 추가 0 · **무시 1** · Conflict 5 | **무시(회색)** | 빈 자리 |
|
||||||
|
|
||||||
|
- 6차 기록의 "처음 넣었을 때 색" 은 "머지 반영함" 이 아니라 **"추가"** 였다. 지시서도 그 말을 옮겨 적었다.
|
||||||
|
- 요약 · 차이 수 · 총 줄 수 · 저장된 파일(주석 1줄 · 3788줄)은 다시 정렬 전후가 같았다 — 색과 범례만 달랐다.
|
||||||
|
|
||||||
|
### 원인
|
||||||
|
|
||||||
|
- 주석 줄을 넣을 때(`InsertNoteAbove`) `IsApplied = true` 로 만들지만, 곧바로 반영 표시를 다시 계산하는 `RefreshAppliedFlags` 가 되돌리기 스택에 없는 그 줄을 **반영 아님**으로 되돌린다.
|
||||||
|
BASE 에 없는 줄이라 "추가" 가 된다. 무시 규칙은 정렬할 때만 매겨서 넣는 순간에는 빠져 있었다.
|
||||||
|
- 다시 정렬하면 줄을 새로 만들며 규칙 "머지 주석 무시" 에 걸려 `IsIgnored` → "무시"(색은 무시가 먼저). 파일에 원래 있던 주석 줄과 같은 모양이다.
|
||||||
|
- 네 칸에서는 `SetRemote(null, null)` 이 MINE 칸에 LocalText(주석)를 넣어 LOCAL(Mine) 칸에 글이 보였다. 다시 정렬한 행은 MINE 이 빈 자리다.
|
||||||
|
|
||||||
|
### 고친 것
|
||||||
|
|
||||||
|
- `HomeViewModel.InsertNoteAbove` — 넣는 줄을 **다시 정렬했을 때와 같은 모양**으로 만든다.
|
||||||
|
`IsIgnored = Rules.IsFiltered(주석)`(규칙이 꺼져 있으면 지금처럼 추가), 네 칸이면 `SetThreeWay(null, null, null, null)`(MINE · REMOTE 빈 자리).
|
||||||
|
- 하네스 `NoteTest` 5건 추가(69건): 주석 줄이 끼어든 MERGED 를 다시 정렬하면 주석 행 하나가 서고 BASE · MINE · REMOTE 가 비며, 규칙이 켜져 있으면 무시 줄 · 끄면 아님 — 넣는 순간 모양의 기준.
|
||||||
|
|
||||||
|
### 확인한 것 (같은 순서로 다시, `d9-b1.ps1` · `d9-b1-extra.ps1`)
|
||||||
|
|
||||||
|
| 때 | 범례 | 101행 주석 줄 | LOCAL(Mine) 칸 |
|
||||||
|
|---|---|---|---|
|
||||||
|
| Take Theirs 직후 | 머지 반영함 1 · 추가 0 · **무시 1** · Conflict 5 · 총 3788줄 | 무시(회색) | 빈 자리 |
|
||||||
|
| [Aa] 한 번 · 두 번 다시 정렬 | 같음 | 같음 | 같음 |
|
||||||
|
| [Undo] | 머지 반영함 0 · 무시 0 · Conflict 6 · 총 3787줄 | 걷어냄 | - |
|
||||||
|
| [Redo] | 머지 반영함 1 · 무시 1 · Conflict 5 · 총 3788줄 | 다시 무시 | 빈 자리 |
|
||||||
|
| Save 뒤 | git `M` · 주석 1줄 · 3788줄 (고치기 전과 같음) | | |
|
||||||
|
| 규칙 "머지 주석 무시" 끔 · Take Theirs 직후 | 머지 반영함 1 · **추가 1** · 무시 0 (지금처럼) | 추가 | |
|
||||||
|
|
||||||
|
- 하네스 22벌 1,122건 통과(+5) · 빌드 경고 0 · 오류 0. 설정은 시험마다 백업 → 되돌림(해시 같음).
|
||||||
|
|
||||||
|
### 알게 된 것 · 남긴 것 (고치지 않음)
|
||||||
|
|
||||||
|
- **규칙 "머지 주석 무시" 를 끈 채 다시 정렬하면 반영 색이 옆 줄로 옮겨 간다.** 주석 줄이 BASE 의 코드 줄(`Power93`)과 한 행으로 짝지어져,
|
||||||
|
초록(머지 반영함)이 주석 줄에 · 보라(직접 수정)가 반영한 코드 줄(`Power100 => 0.9`)에 붙는다. 반영 표시가 BASE 줄 번호로 붙들려 있어서다.
|
||||||
|
이번에 바꾼 것이 아니고 기본값(켬)에서는 나지 않는다. 범례 수 · 저장 내용은 같다.
|
||||||
|
|||||||
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
| 날짜 | 항목 | 커밋 |
|
| 날짜 | 항목 | 커밋 |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
|
| 2026-09-17 | **9차 B-1** — 네 칸에서 줄을 반영하며 넣은 머지 주석 줄이 넣는 순간 "추가"(파랑)였다가 다시 정렬하면 "무시"(회색)로 바뀌었고, LOCAL(Mine) 칸에 내 파일에 없는 주석 글이 보였다. 사용자 결정대로 넣는 순간부터 다시 정렬한 모양(규칙 켜짐이면 무시 · Mine 빈 자리)으로 넣는다. 파일에 원래 있던 주석 줄과 같은 색. 하네스 NoteTest +5 | 아래 |
|
||||||
| 2026-09-17 | **9차 A-2** — 8차 E-1 에서 한 번 다른 브랜치 커밋이 기준으로 잡힌 것은 A-1 과 뿌리가 같았다(선택을 놓치면 목록 맨 위). 해시만 지키자 cherry-pick [커밋] 뒤 선택이 옛 HEAD 에 남아 방금 커밋한 줄이 "남은 차이 6줄" 로 보여, **HEAD 를 보고 있었으면 커밋 · 체크아웃 뒤 새 HEAD 를 따라가게** 함께 고침. 같은 순서 여섯 번 모두 규칙대로. 하네스 +5 | 아래 |
|
| 2026-09-17 | **9차 A-2** — 8차 E-1 에서 한 번 다른 브랜치 커밋이 기준으로 잡힌 것은 A-1 과 뿌리가 같았다(선택을 놓치면 목록 맨 위). 해시만 지키자 cherry-pick [커밋] 뒤 선택이 옛 HEAD 에 남아 방금 커밋한 줄이 "남은 차이 6줄" 로 보여, **HEAD 를 보고 있었으면 커밋 · 체크아웃 뒤 새 HEAD 를 따라가게** 함께 고침. 같은 순서 여섯 번 모두 규칙대로. 하네스 +5 | 아래 |
|
||||||
| 2026-09-17 | **9차 A-1** — cherry-pick 마지막 [Save] 뒤 두 칸의 기준이 고른 커밋 · 다른 브랜치 커밋 · HEAD 중 하나로 그때그때 달랐는데 요약은 늘 "내 쪽 대비" 라고 했다. 새로고침이 이력 목록을 갈아 끼우며 선택을 놓치면 **목록 맨 위**로 채웠기 때문([모든 브랜치] 에서 맨 위는 HEAD 가 아님). 사용자 결정대로 작업 중 충돌이 막 0 이 되면 기준을 HEAD 로 옮기고, 그 밖에는 해시로 되찾고 없으면 HEAD. 요약은 기준이 HEAD 일 때만 작업 글. 하네스 +18 | 아래 |
|
| 2026-09-17 | **9차 A-1** — cherry-pick 마지막 [Save] 뒤 두 칸의 기준이 고른 커밋 · 다른 브랜치 커밋 · HEAD 중 하나로 그때그때 달랐는데 요약은 늘 "내 쪽 대비" 라고 했다. 새로고침이 이력 목록을 갈아 끼우며 선택을 놓치면 **목록 맨 위**로 채웠기 때문([모든 브랜치] 에서 맨 위는 HEAD 가 아님). 사용자 결정대로 작업 중 충돌이 막 0 이 되면 기준을 HEAD 로 옮기고, 그 밖에는 해시로 되찾고 없으면 HEAD. 요약은 기준이 HEAD 일 때만 작업 글. 하네스 +18 | 아래 |
|
||||||
| 2026-09-17 | **9차 지시서** — 8차 전부 끝. E-1 에서 새로 걸린 N1(A-1 cherry-pick 마지막 저장 뒤 요약은 "내 쪽 대비" 인데 두 칸의 기준은 이력에서 고른 커밋 — 먼저 정함 · A-2 한 번은 다른 브랜치 커밋이 기준 — 새로고침 뒤 선택 복원, 원인부터)과 전에 남긴 것(B-1 MERGED 주석 줄 "무시" 색 · B-2 폴더 트리 1초) · C-1 웹 문서(F-1 · 숫자) · D-1 cherry-pick · revert 를 마지막 파일까지 네 칸으로. 코드 변경 없음 | 아래 |
|
| 2026-09-17 | **9차 지시서** — 8차 전부 끝. E-1 에서 새로 걸린 N1(A-1 cherry-pick 마지막 저장 뒤 요약은 "내 쪽 대비" 인데 두 칸의 기준은 이력에서 고른 커밋 — 먼저 정함 · A-2 한 번은 다른 브랜치 커밋이 기준 — 새로고침 뒤 선택 복원, 원인부터)과 전에 남긴 것(B-1 MERGED 주석 줄 "무시" 색 · B-2 폴더 트리 1초) · C-1 웹 문서(F-1 · 숫자) · D-1 cherry-pick · revert 를 마지막 파일까지 네 칸으로. 코드 변경 없음 | 아래 |
|
||||||
|
|||||||
@ -257,7 +257,7 @@
|
|||||||
|
|
||||||
| 상태 | 항목 |
|
| 상태 | 항목 |
|
||||||
|---|---|
|
|---|---|
|
||||||
| 대기 | B-1 MERGED 칸에서 넣은 주석 줄이 다시 정렬하면 "무시" 색이 된다 (먼저 사용자와 정함) |
|
| **완료** | B-1 MERGED 칸에서 넣은 주석 줄이 다시 정렬하면 "무시" 색이 된다 — 사용자가 "처음부터 무시 색" 을 고름(2026-09-17). 넣는 순간 "추가"(파랑)였고 LOCAL(Mine) 칸에 주석 글이 보였는데, 다시 정렬했을 때와 같은 모양(무시 · Mine 빈 자리)으로 넣는다. Undo · Redo · 저장 내용 그대로, 규칙을 끄면 지금처럼 추가. 규칙을 끈 채 다시 정렬하면 반영 색이 옆 줄로 옮겨 가는 것은 적어 둠 |
|
||||||
| 대기 | B-2 폴더 비교 뒤 화면 트리를 세우는 데 1초 남짓 (재고 정함) |
|
| 대기 | B-2 폴더 비교 뒤 화면 트리를 세우는 데 1초 남짓 (재고 정함) |
|
||||||
|
|
||||||
### C. 문서
|
### C. 문서
|
||||||
|
|||||||
@ -2049,9 +2049,15 @@ namespace MergeHub.ViewModels
|
|||||||
{
|
{
|
||||||
IsApplied = true,
|
IsApplied = true,
|
||||||
IsMergeNote = true,
|
IsMergeNote = true,
|
||||||
|
// 다시 정렬했을 때와 같은 모양으로 넣는다(9차 B-1, 사용자 결정 "처음부터 무시 색").
|
||||||
|
// 예전에는 넣는 순간 "추가"(파랑)였다가 타이핑이 멈추거나 규칙을 바꿔 다시 정렬하면 "무시"(회색)가 됐다.
|
||||||
|
// 파일에 원래 있던 주석 줄은 처음부터 무시다. 규칙 "머지 주석 무시" 를 끄면 지금처럼 추가로 남는다.
|
||||||
|
IsIgnored = Rules.IsFiltered(indent + note),
|
||||||
};
|
};
|
||||||
|
|
||||||
if (line.IsThreeWay) row.SetRemote(null, null);
|
// 네 칸에서는 MINE · REMOTE 칸을 빈 자리로 둔다. SetRemote 는 MINE 칸에 LocalText(주석)를 넣어,
|
||||||
|
// 내 파일에 없는 주석이 LOCAL(Mine) 칸에 번호 없이 보였다 - 다시 정렬하면 빈 자리가 됐다.
|
||||||
|
if (line.IsThreeWay) row.SetThreeWay(null, null, null, null);
|
||||||
|
|
||||||
Lines.Insert(at, row);
|
Lines.Insert(at, row);
|
||||||
return row;
|
return row;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user