ksj09406 df9202c6d5 11차 F-12: C# 코드 스타일 맞춤 기본값을 AURORA 로
사용자 결정(2026-09-18): 제품 기본값 AURORA · C# 파일만 · 저장 동작은 지금 그대로.

- MergeHubSettings.CSharpBraceStyle 기본값 None → Aurora (한 줄, 까닭 주석)
- C/C++ · XAML 은 고칠 것 없음 - CSharpStyle.Applies 가 확장자 .cs 만 본다
- 하네스 StyleTest +12 (78 → 90): 기본값 · 확장자별 적용 여부. 먼저 넣어 기본값 검사만 실패하는 것을 보고 시작
- 설정 파일 없는 첫 실행: 상태바 'C# AURORA' · C# 짝 차이 없음 · C++ 짝 남은 차이 4줄 · 새로 만든 설정에 1
- 웹 문서 매뉴얼 · 설정 표 · 시연 대본의 '기본은 끔' 을 고침
- 22벌 1,159건 통과 · 빌드 경고 0 오류 0

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:02:35 +09:00

33 KiB
Raw Blame History

변경 이력

무엇을 왜 바꿨는지 한 줄로 남긴다. 자세한 이야기는 날짜별 파일에 있다.

플랫폼(UbisamPlatform/doc/history/changelog.md)과 형식은 같지만 기준이 다르다. 플랫폼 changelog 의 핵심은 "다른 소비 프로그램에 미치는 영향"인데, MergeHub 는 소비 프로그램이라 그럴 대상이 없다. 여기서는 무엇을 왜 바꿨는지가 중심이다.

날짜 항목 커밋
2026-09-18 11차 F-12 (추가 요청) — C# 코드 스타일 맞춤의 제품 기본값을 끔 → AURORA 로(사용자 결정). 사내 코드가 이 스타일이라 설정을 켜지 않아도 중괄호 자리 차이를 안 보게 한다. C/C++ · XAML 은 원래부터 확장자 .cs 에만 걸려 손대지 않음. 저장 동작은 그대로. 설정 없는 첫 실행에서 AURORA 확인, C# 짝 "차이 없음" · C++ 짝 "남은 차이 4줄". 하네스 StyleTest +12(90건) 아래
2026-09-18 11차 A-1 — 변경분 추출을 화면에서 아홉 경우로 뽑아 git 과 대조(고치지 않음). 파일 고르기 · 바이트 보존(이진 · 한글 · 깊은 경로) · 범위 표시는 맞았다. 확정된 문제 넷: 지운 파일 · 이름 바뀐 옛 경로가 결과에 안 남음, 무엇과 무엇 사이를 뽑았는지 안 남음(병합 커밋은 첫 부모와만 · 거꾸로 범위도 말없이 됨), 비어 있지 않은 폴더에 묻지 않고 덮어써 옛 추출이 섞임, 쓰다 막히면 반쯤 뽑힌 채 멈춤. A-2 · A-3 으로 넘김. 제품 코드 변경 없음 아래
2026-09-18 11차 F 절 (추가 요청) — 사용자가 한꺼번에 준 열한 가지를 지시서에 넣음: 칸 이름 · 어느 파일인지(F-1) · 메서드 단위 반영(F-2) · 폴더 두 개 보내기 + 설치 없이 되는지(F-3) · 툴박스 감추기(F-4) · 글자 크기(F-5) · 넓게 보기(F-6) · 모니터(F-7) · 저장 뒤 되돌리기(F-8) · 백업 저장(F-9) · 덩어리 잇기 UI(F-10) · Git 계정 · 토큰 저장 확인(F-11). 항목마다 지금 코드가 어떤지와 정할 것을 함께 적음. 코드 변경 없음 아래
2026-09-17 11차 지시서 — 10차 전부 끝(E-1 새로 걸린 것 없음). 기획안 v1.2 에서 "일부" 로 남은 것과 베타 전 확인에서 나온 것을 11차로 — A 변경분 추출(먼저 뽑아 보고 적기 · 지운 파일 · 범위 안내 · 비어 있지 않은 폴더 · ZIP) · B 배포 폴더가 09-07 것 · D 드라이브 고정 설정 위치 · C 커밋 메시지 수정(있는 [커밋 수정] 의 [마지막 메시지] 가 목록 맨 위 · 스테이징 파일이 말없이 들어감 · 작성자가 바뀜 · 작업 중에도 켜짐, 임의 커밋 수정은 할지 정함) · D 시험 도구 · E 확인 · 문서. 코드 변경 없음 아래
2026-09-17 10차 E-2 — 웹 문서를 10차 끝 기준으로(아티팩트 버전 11). 발행본이 9차 D-1 파일과 같음을 먼저 확인. 매뉴얼에 두 탭이 같은 커밋을 본다는 설명, 알아 둘 한계에서 고친 둘(Git 탭 고른 커밋 안 따라옴 · 규칙 끈 채 반영 색) 뺌, 남은 일 · 지금까지 만든 것에 10차, 숫자(1,147건 · 커밋 114). 10차 D-1 · F-3 에서 로컬로만 고친 문장도 함께 발행 아래
2026-09-17 10차 E-1 — 새로 만든 저장소에서 병합 · pull · rebase · cherry-pick · revert 를 MergeHub 만으로 끝까지(파일 비교 탭 미리 안 엶, cherry-pick · revert 는 [모든 브랜치] · Git 탭 이력을 마우스로). 다섯 길 모두 첫 회차에 끝, 누른 Take = 줄 고른 로그(18 · 18 · 18 · 18 · 6), 마지막 Save 뒤 제목 · 요약 · 기준이 git 과 같음, 줄끝 · BOM · 충돌 표식 · class 이름 0. Git 탭에서 고른 커밋을 파일 비교 탭이 바로 따라옴. 8차 · 9차 회귀 없음, 새로 걸린 것 없음. 제품 코드 변경 없음 아래
2026-09-17 10차 F-3 (추가 요청) — 폴더 비교 "주석만 다름" 에 BOM · 줄끝 · 인코딩 · 끝 공백 · 빈 줄 · 들여쓰기만 다른 파일도 들어와 맞지 않는 이름이었다. 판정은 그대로 두고 "다름(이진)" 과 같은 꼴로 "다름(코드는 같음)" 으로 바꿈 — 목록 · 범례(설명 붙임) · 요약 "다름 N(코드는 같음 M)" · 비교 결과 보고서 · 웹 문서. 하네스 FolderTest +1 아래
2026-09-17 10차 F-1 · F-2 (추가 요청) — 폴더 비교 "같은 것만" 에서 같은 파일을 품은 폴더 줄이 폴더 자신의 상태 "다름"(주황)으로 보여 내용이 다른 것이 섞인 것처럼 읽혔다. 걸러 볼 때(같은 것만 · 왼쪽에만 · 오른쪽에만) 폴더 줄은 걸린 파일 수와 그 갈래 색으로 적는다. 설정(C# 스타일 맞춤 · 머지 주석 무시)으로 같음이 된 파일은 사용자 결정대로 같음으로 두고 "같음(스타일만 다름)" · "같음(머지 주석만 다름)" 으로 까닭을 붙인다. 요약 수 그대로. 하네스 FolderTest +15 아래
2026-09-17 10차 D-1 — 9차 B-2 에서 한 번 잰 "그날 첫 폴더 비교 9.2초" 를 다시 냈다. 파일마다 버퍼 없이 열어 캐시를 비워도(한 갈래 읽기 0.4 → 1.8초로 먹는 것 확인) 전체 비교는 0.46~0.54초로 데운 상태와 같았고(여러 갈래 읽기), 앱을 새로 켠 첫 비교도 느리지 않았다. 9.2초는 다시 안 남 → 고치지 않음(제품 코드 변경 없음). 매뉴얼 한계 문장을 잰 값으로 고침. HDD 는 재 보지 않음 아래
2026-09-17 10차 C-1 — 설정 "머지 주석 무시" 를 끈 채 네 칸을 다시 정렬하면 주석 줄이 BASE 코드 줄과 한 행이 되어 반영 표시(BASE 줄 번호)가 주석 줄에, 반영한 코드 줄은 "직접 수정" 으로 보였다. 네 칸은 규칙과 상관없이 주석 줄과 코드 줄을 떼어 놓고, 다시 정렬한 주석 줄을 "반영함" 으로 칠하지 않게 함. 요약 · 줄 수 · 저장 해시 그대로. 두 칸도 떼어 보니 차이 수가 늘어(4 → 5줄) 두 칸은 그대로. 하네스 NoteTest +5 아래
2026-09-17 10차 B-1 — Git 탭과 파일 비교 탭이 고른 커밋 값을 함께 쓰는데 표시는 새로고침 전까지 서로 안 따라왔다. 파일 비교 탭에서 고르면 Git 탭은 옛 커밋에 선택 표시가 남은 채 [Revert] 가 보이지 않는 커밋에 걸렸다. 사용자 결정대로 양방향으로 바로 따라가고(CommitChosen), 파일 비교 탭에 저장 안 한 편집이 있으면 Git 탭 목록이 선택을 바꾸기 전에 물어 [취소] 면 누름을 막는다. 하네스 +4 아래
2026-09-17 10차 A-1 — 9차 D-1 N1(네 칸에서 고르기 한 번이 안 남아 멈춤)을 앱 안 임시 로그(잰 뒤 되돌림)와 함께 61회 · 누름 366번(병합 · cherry-pick × 9차 간격 · 0.1초) 되풀이 — 다시 안 남, 앱은 Take 372번 모두 충돌 줄에서 받아 하나씩 줄임(헛돈 0). Take 뒤 [다음 충돌] 처리 전에는 Take 단추가 꺼져 있는데 9차 시험 도구가 "꺼져서 안 누름" 을 버린 것으로 보임. 제품 코드 변경 없음, 시험 도구가 다시 누르고 못 누르면 적게 고침 아래
2026-09-17 10차 지시서 — 9차 전부 끝. D-1 에서 새로 걸린 N1(A-1 네 칸에서 고르기 한 번이 남지 않아 멈춤 — 자동 조작인지 제품인지 원인부터)과 9차에서 적어 둔 셋(B-1 Git 탭에서 고른 커밋을 파일 비교 탭이 안 따라옴 — 먼저 정함 · C-1 머지 주석 무시를 끈 채 다시 정렬하면 반영 색이 옆 줄로 · D-1 첫 폴더 비교 9.2초 — 재고 정함) · E-1 다섯 길 + pull · E-2 웹 문서. 코드 변경 없음 아래
2026-09-17 9차 D-1 — 병합 · rebase · cherry-pick · revert 를 새 저장소에서 파일 비교 탭을 미리 열지 않고 끝까지(코드 변경 없음). cherry-pick · revert 는 [모든 브랜치] 를 켜고 마지막 파일을 네 칸으로. 네 길 모두 마지막 Save 뒤 제목 · 요약 · 기준(HEAD) 같음 · 요약 N줄 = git diff · 커밋 뒤 기준 새 HEAD · 줄끝 · BOM 바뀐 파일 0 · class 검사 0. 새로 걸린 것: N1 cherry-pick 첫 회차에서 고르기 한 번이 안 남아 "남은 충돌 1개" 로 멈춤(다시 하니 끝까지) → 10차. 9차 전부 끝. 웹 문서 "9차 끝" (아티팩트 버전 10) 아래
2026-09-17 9차 C-1 — 웹 문서가 8차 D-1(E-1 · F-1 전)에서, "지금까지 만든 것" 은 6차에서 멈춰 있었다. 개요 숫자(22벌 1,122건 · 커밋 104), 매뉴얼에 병합 커밋 본문 해결 내역 · 해결 기록이 남는 곳 · 마지막 저장 뒤 기준 HEAD · 한계 넷, 남은 일에 8차 끝 · 9차 표, 지금까지 만든 것 7~9차. 화면 문구 grep 대조 · 태그 짝 맞음. 아티팩트 버전 9. 제품 코드 변경 없음 아래
2026-09-17 9차 B-2 — 5차에 "폴더 비교 뒤 트리를 세우는 데 1초 남짓" 으로 적어 둔 것을 앱 안 임시 측정(잰 뒤 되돌림)으로 단계별로 쟀다. 4,500개 묶음에서 트리 만들기 5~17ms · 첫 화면까지 0.13초(필터 전체 0.24초), 비교는 데운 뒤 0.7초. 5차 값은 자동 조작 대기가 섞였다. 줄일 자리가 없어 고치지 않음(코드 변경 없음). 그날 첫 비교 9.2초는 적어 둠 아래
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-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 8차 E-1 — 다섯 길(병합 · pull · rebase · cherry-pick · revert)을 새 저장소에서 파일 비교 탭을 미리 열지 않고 MergeHub 만으로 끝까지(제품 코드 변경 없음). 다섯 길 모두 커밋(rebase 끝)까지 · 줄끝 · BOM 바뀐 파일 0 · 충돌 표식 0 · class 이름 검사 0. 7차 A-1 · A-2 · B-1, 8차 A-1 · B-1 · B-2 다시 안 남, F-1 병합 · pull 본문 26개. 새로 걸린 것: N1 cherry-pick 요약 "내 쪽 대비 가져온 변경" 이 실제 기준(이력에서 고른 커밋)과 다름 · 한 번 다른 브랜치 커밋이 기준으로 잡힘(재현 안 됨) → 9차. 8차 전부 끝 아래
2026-09-17 8차 F-1 (추가 요청) — 충돌 탭 파일 단위 Accept 는 소스에 주석이 안 남고, 병합 커밋 본문은 비어 있었고, Git 탭 로그는 끄면 사라져 누가 어느 파일을 어떻게 풀었는지 남는 곳이 없었다. 병합 · pull 중 푼 방법(줄 단위 · Accept Mine/Theirs/Both · 파일 남기기/지우기 · 머지 주석 자동)을 .git/MERGEHUB_RESOLUTIONS 에 적고, [병합 커밋] 본문에 "충돌 해결 N개 · 이름" 과 갈래별 파일 목록을 붙인다(Git 탭 메시지 칸에 미리 보임, 사람이 고쳐도 커밋 때 붙음). 기록은 병합 커밋 · 작업 취소 때 치운다. 병합 26개 · pull 26개 · Accept Mine · 취소 확인. 스타일 맞춤 선택지는 만들지 않기로(사용자) 아래
2026-09-16 8차 D-1 — 웹 문서(doc/web/index.html)가 6차에서 멈춰 있었다. 7차 · 8차에서 바뀐 것을 매뉴얼에 넣고(창 크기 조절 · 이름 창 잠금 · 폴더 끌어다 놓기 차례 · 작업별 네 칸 제목과 끝내기 단추 · MERGED 줄 번호 · pull · rebase · cherry-pick · revert 가 같은 길), "알아 둘 한계" 를 지금 기준으로 다시 썼다(사라진 네 줄 빼고 스냅 한계 추가). 남은 일 표를 7차 · 8차로 갈아 끼우고 숫자 갱신(22벌 1,073건 · 커밋 94). 발행된 아티팩트도 버전 7 로 갱신. 제품 코드 변경 없음 아래
2026-09-16 8차 C-3 — 7차 E-4 에서 남긴 넷을 실제 픽셀로 쟀다. 기억 없이 처음 Win+↓ 로 내리면 1600×900 DIP 가 화면 아래로 16px 넘치고 작업 표시줄을 가렸고, 최대화 창에서 이름 창이 세로 36px 위에 떴다. 사용자 결정대로 첫 복원을 두 번 누르기 복원과 같게(작업 영역 80% · 가운데), 덮는 창을 본 창 실제 사각형 가운데로 고침(플랫폼 ShellWindow · 새 OwnerCentering). 스냅은 최소 크기(1280×720 DIP) 때문에 화면 반쪽이 될 수 없음을 적어 둠, 1px 테두리는 그대로. 플랫폼 수정 · 배포 아래
2026-09-16 8차 C-2 — 7차에서 코드로만 봤던 "cherry-pick 은 원래 작성자를 남긴다" 를 화면으로 확인(제품 코드 변경 없음). 생성기에서 상대 쪽 작업 만 작성자를 박지훈으로 두고, MergeHub 와 git 이 각각 cherry-pick · revert 를 하게 해 견줌 — cherry-pick 은 둘 다 작성자 박지훈 · 커밋한 사람 시험, revert 는 둘 다 시험. 이력 목록에도 박지훈으로 보인다 아래
2026-09-16 8차 C-1 — 7차 C-2 에서 만든 길로 revert 도 되는지 화면으로 끝까지 봤다(제품 코드 변경 없음). 시험 저장소 생성기에 feature/revert(뒤이은 수정) 갈래를 더해 revert 충돌 16개를 만들고, [Revert] → 머리 "revert 진행 중" → 네 칸 REMOTE "되돌리는 커밋 …" → 로그 "101행 Theirs(커밋 …) 반영" → 진행 줄 "[커밋] 으로 revert 를 끝냅니다" → 원래 메시지로 커밋까지. 줄끝 · BOM 바뀐 파일 0 · 충돌 표식 0 · class 이름 검사 0 아래
2026-09-16 8차 B-3 — 네 칸 MERGED 칸 줄 번호가 정렬할 때 정해진 채 굳어, 고른 줄 · 머지 주석으로 결과가 늘어도 그대로였다(끝 번호 3363 · 상태바 총 3369줄). 사용자가 "결과 파일 번호로" 를 골라, 결과에 들어가는 줄만 1부터 다시 매긴다(MergedNumbering). 줄을 만들 때와 요약을 그릴 때마다 다시 매겨 고르기 · 편집 · 되돌리기 뒤에도 맞는다. 저장된 파일 줄 수(3369)와 화면 번호가 같아짐 아래
2026-09-16 8차 B-2 — 이미 들어 있는 커밋을 cherry-pick 하면 [커밋] 이 켜지는데 누르면 로그에 "실패: No changes; nothing to commit." 만 남고 진행 줄도 그대로라 같은 단추를 또 누르게 됐다. 커밋할 것이 있는지(HasStagedChanges)를 상태로 들고 있다가 [커밋] 을 끄고, 진행 줄 · 적용 로그가 "가져올(되돌릴) 변경이 없습니다 - [작업 취소] 로 끝냅니다" 라고 말한다. 커밋 직전에도 사람 말로 막는다. 병합 커밋은 트리가 같아도 정상이라 걸지 않음 아래
2026-09-16 8차 B-1 — rebase · cherry-pick 에서 마지막 충돌을 [Save] 하면 파일 비교 탭이 "남은 차이 6줄" 로 떨어져 충돌 탭과 다른 말을 했다(7차 A-1 이 병합 전용이었고 화면도 MERGE_HEAD 기준으로 물었다). 요약 · BASE 제목을 작업 상태(GitOperationState)에 맞춰 OperationLabels 로 옮김 — 끝말은 충돌 탭 진행 줄과 같은 FinishHint, 차이 줄은 작업별로(받은 · 올린 · 가져온 · 되돌린 변경), 제목 꼬리는 병합 "병합 전 내 쪽" · rebase "올릴 자리" 등. 병합 글은 그대로 아래
2026-09-16 8차 A-1 — 파일 비교 탭을 처음 여는 것이 [3분할로 열기] 면 고른 파일 대신 첫 충돌 파일이 보였고, 그 화면을 [Save] 하면 고른 파일에 그 내용이 써졌다(Unit47 이 Unit15 내용으로 스테이징). 탭을 만들 때의 목록 세우기와 고른 파일 열기가 겹쳐, 늦게 끝난 읽기가 화면을 덮은 것. 읽기는 경로 · 커밋이 바뀌었으면 버리고 한 번 더 읽게, 쓰기(저장 · Save & Commit · 파일 지우기/남기기)는 화면에 실린 파일과 다르면 아무것도 쓰지 않게 했다. 네 길 모두 고른 파일이 열리고 저장이 그 파일에만 감, 병합은 사람 순서 그대로 끝까지(줄끝 0/33 · 내용 검사 0) 아래
2026-09-15 8차 지시서 — 7차 전부 끝. D-1 에서 새로 걸린 넷(A-1 고른 파일에 다른 파일 내용이 저장됨 · B-1 rebase / cherry-pick "남은 차이" · B-2 빈 cherry-pick [커밋] · B-3 MERGED 번호)과 7차에서 남긴 것(revert 끝까지 · 원래 작성자 · 창 크기 스냅 등) · 웹 문서 갱신 · 다섯 길 재확인(파일 비교 탭을 미리 열지 않고). 코드 변경 없음 아래
2026-09-15 7차 D-1 — 병합 · pull · rebase · cherry-pick 을 새 저장소에서 MergeHub 만으로 끝까지(코드 변경 없음). 네 길 모두 커밋까지 · 줄끝 · BOM 바뀐 파일 0 · A-2 · B-1 다시 안 남 · MERGED 줄 번호 안 잘림. 새로 걸린 것: N1 파일 비교 탭을 처음 여는 것이 [3분할로 열기] 면 다른 파일이 보이고 그대로 [Save] 하면 고른 파일에 그 내용이 써짐 · N2 rebase · cherry-pick 마지막 저장 뒤 "남은 차이"(A-1 이 병합만) · N3 MERGED 번호가 결과 번호가 아님 · N4 빈 cherry-pick [커밋] 이 켜져 실패 → 8차 아래
2026-09-15 7차 E-4 — 셸 창이 최대화 전용이었다. 가장자리를 끌어 크기 조절(최소 1280×720 DIP) · 브랜딩 바 두 번 누르기 최대화 ↔ 복원 · 보통 크기로 끌면 크기 그대로 · 화면 이동이 DIP 크기를 지킴 · 마지막 크기 · 모니터 · 최대화 기억. 최대화는 작업 표시줄까지 덮는다(사용자 결정 — 틀을 붙인 뒤 작업 표시줄이 하단 탭 바를 가려 최대화 동안 틀을 뗌). 크기를 바꿀 때 창이 검게 깜빡이던 것(99.7% → 3%). 플랫폼 수정 · 배포, MergeHub 코드 변경 없음 아래
2026-09-15 7차 C-2 — rebase · cherry-pick 충돌을 화면이 모두 "병합" 으로 불렀다(REMOTE · THEIRS, cherry-pick 에 "병합 진행 중", 다 풀면 끝낼 단추가 없음, 로그에 RebaseContinue() · Commit(), 다른 브랜치 커밋을 cherry-pick 할 수 없음). 작업 상태(GitOperationState)로 칸 제목 · 머리 글 · 진행 표시 · 끝내기 단추(병합 커밋 · 계속 · 커밋)를 정하고, cherry-pick · revert 는 원래 메시지 · 작성자로 커밋. 머지 주석 자동 풀기도 함께. 이력 탭 [모든 브랜치]. 두 길 모두 MergeHub 만으로 끝까지, 줄끝 바뀐 파일 0 아래
2026-09-14 7차 지시서에 E-4 추가 — 사용자 요청 "창 크기를 마음대로 조절". 지금은 셸이 최대화 전용(테두리 없음 · 크기 고정 · 끌면 다시 최대화). 걸리는 곳(크기 조절 테두리 · 배율 다른 모니터 · 크기 기억 · MergeHub 고정 폭과 네 칸 정렬 · 모든 소비 프로그램)과 판정 기준을 적음. 코드 변경 없음 아래
2026-09-14 7차 C-1 — pull 로 받은 충돌은 머지 주석만 다른 파일까지 사람에게 물었고(26 · 0/26), 알림도 커밋 메시지도 없었다. [Merge] 의 뒷일을 AfterMerge 로 빼 pull 도 같게(24 · 2/26 · 같은 알림). pull 병합 커밋 메시지는 git 과 같은 "Merge remote-tracking branch 'origin/feature/mine' into feature/mine" 아래
2026-09-14 7차 B-1 — 병합 때 적는 처음 충돌 목록(.git/MERGEHUB_CONFLICTS)이 병합 커밋 · 작업 취소 · 터미널에서 끝낸 병합 뒤에도 남았다. MERGE_HEAD 가 없거나 다른 병합의 것이면 병합 커밋 · 작업 취소 직후와 상태를 다시 읽을 때마다 지운다. 병합 중에는 그대로라 "푼 것 M개" 는 이어진다 아래
2026-09-14 7차 A-2 — 병합 충돌 네 칸에서 Take Theirs 로그가 "10행 (3-Way 안 씀) 반영" 이고 Take Mine 은 로그가 없었다. 이제 "10행 Theirs(feature/theirs) 반영" · "10행 Mine(feature/mine) 으로 정함". 충돌 네 칸 머리는 3-Way 콤보 대신 "병합 충돌 · REMOTE = 상대". 브랜치 3-Way 문구는 그대로 아래
2026-09-14 7차 E-2 — 폴더 비교 화면 아무 데나 폴더를 하나 놓으면 늘 첫 칸에 들어가 두 번째 폴더가 첫 폴더를 덮어썼다. 놓는 차례대로 첫 칸 → 둘째 칸(양쪽이 차면 바로 비교), 경로 칸 위에 놓은 것도 차례에 친다. 탐색기에서 끌어다 놓아 확인 아래
2026-09-14 7차 E-3 — 켤 때 사용자 이름 창을 Alt+F4 로 닫으면 이름 없이 본 창을 쓸 수 있었고 창도 끌려 움직였다. 저장 전에는 닫히지 않고 움직이지 않게(플랫폼 UserNameDialog, 확인 받고 D:\UbisamPlatform\bin 배포). MergeHub 코드 변경 없음 아래
2026-09-14 7차 A-1 — 마지막 충돌을 [Save] 하면 파일 비교 탭이 "남은 차이 6줄" 로 떨어져 덜 푼 것처럼 보이던 것. 병합 중 충돌 0 이면 두 칸 요약이 "충돌 정리 끝 · 병합 커밋을 할 수 있습니다 · 내 쪽 대비 받은 변경 N줄", BASE 제목에 "병합 전 내 쪽". E-1 때 못 돌린 MergeSaveTest 기대값도 [Save] 로 아래
2026-09-14 7차 지시서 · E-1 — 6차 D-1 에서 걸린 세 가지와 pull · rebase · cherry-pick 충돌로 7차 지시서를 씀. 병합 중 [해결로 저장] 단추를 [Save] 로(LOCAL 저장 단추라 Save & Commit 과 짝). 하는 일 그대로, 알림 · 막힘 안내 · 웹 문서 이름도 아래
2026-09-14 6차 D-1 — 새로 만든 저장소를 MergeHub 만으로 처음부터 병합 커밋까지(충돌 26 · 자동 2 · 파일 단위 15 · 3분할 7 · 지우기/남기기 2). 줄끝 · BOM 이 바뀐 파일 0/33, 표식 0. 5차 C-1 의 23가지 중 사라짐 18. 새로 걸린 3가지는 7차로. 코드 변경 없음 아래
2026-09-14 6차 C-1 — 병합 · revert · cherry-pick · rebase · pull 결과가 로그에 두 번 찍히던 것을 한 번으로. 충돌 탭 목록에 종류(양쪽 수정 · 상대 삭제 · 내가 삭제 · 양쪽 새 파일)와 "남은 충돌 N개 · 푼 것 M개 (M/전체)". 처음 충돌 목록을 .git 에 적어 두어 앱을 다시 켜도 이어짐 아래
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) 아래
2026-09-14 6차 B-6 — 충돌 탭에서 여러 파일을 골라(Ctrl · Shift) Accept 를 한 번에. 작업 하나로 풀고 저장소 다시 읽기는 끝에 한 번. 같은 줄 충돌 15개 22.0초 → 1.2초 아래
2026-09-14 6차 B-5 — 머지 주석을 비교에서 무시(주석 줄은 거르고 줄 끝 주석은 떼고 견줌). 주석만 다른 git 충돌은 양쪽 주석을 남겨 자동으로 풂. 정렬이 주석 줄과 코드 줄을 짝지으면 떼어 놓음. 폴더 비교도. 설정 [머지 주석] 에서 끔 아래
2026-09-14 6차 B-4 확인 중 발견 두 건 — "마지막 차이" 로 멀리 건너뛰면 표시층 보정이 화면 밖 행으로 재져 네 칸이 9줄 위로 밀리던 것을 고침. git mergetool 이 넘긴 세 벌을 두 칸이 아닌 네 칸으로 열고 결과를 MERGED 파일에 쓴다 아래
2026-09-14 6차 B-4 — 3분할 MERGED 칸 줄 번호 자리가 20px 라 2949 가 "294" 로 잘리던 것을 고침. 네 칸 여백을 54 → 66px 로 맞춰 넓혀 다섯 자리까지 보인다 아래
2026-09-14 6차 B-3 — 병합 커밋 기본 메시지를 Merge branch '상대' into 내 브랜치 로. 첫 파일 이름이 굳어 남던 것, 커밋에 #Conflicts: 줄 24개와 해시 첫 줄이 들어가던 것을 고침. 병합이 끝나면 스스로 채운 글만 지운다 아래
2026-09-14 6차 B-2 — 파일을 바꿀 때 확인 창이 고친 파일 이름을 대고, [저장하고 계속] 이 엉뚱한 파일(새로 고른 파일)에 쓰던 것을 막음. [취소] 뒤 콤보가 제자리로. 저장소를 먼저 열면 목록이 0개이던 B-1 빈틈도 아래
2026-09-14 6차 B-1 — 새로고침 뒤 파일 목록을 게이트가 풀릴 때까지 기다렸다 세움(병합 뒤 304개 → 23개). 충돌 목록 두 번 누르기·Enter·[3분할로 열기] 로 파일 비교 탭 네 칸에서 연다. 없는 '홈 탭' 글을 고침 아래
2026-09-14 6차 A-5 — 파일 단위 Accept Both 가 두 벌을 글로 풀어 이어 붙이고 내 쪽 형식으로 쓴다(가운데 BOM 사라짐). 누르기 전에 무엇이 일어나는지 묻는다. A 묶음 끝 아래
2026-09-14 6차 A-4 — 한쪽이 지운 충돌(UD·DU)은 줄 단위 3분할 대신 남은 파일을 두 칸으로 보이고 [파일 남기기] · [파일 지우기] 로 푼다. 거꾸로 세던 범례(Theirs only 89)가 없어짐 아래
2026-09-14 6차 A-3 — 병합 중 충돌 파일을 열면 콤보를 안 건드려도 네 칸이 뜬다. REMOTE 제목에 상대 브랜치 이름(MERGE_HEAD → 병합 메시지 → 짧은 해시) 아래
2026-09-14 6차 A-1 — 충돌 해결 저장이 내 쪽(ours) 파일의 줄끝·인코딩을 따른다(3,363줄 파일 +3,367/−3,363 → +8/−4). 검사 모음이 옛 실행 파일로 돌던 것을 찾아 세 벌을 고침 아래
2026-09-14 6차 A-2 — 병합 중 [해결로 저장] 을 따로 둠(쓰고 스테이징만). Save & Commit 은 남은 충돌이 있으면 쓰기 전에 막는다. 건너뛴 목록 불러오기가 목록을 비우던 것도 막음 아래
2026-09-14 지시서 6차 B-5 정함 — 머지 주석은 소스에 넣고, 비교·병합에서는 그 줄을 무시한다. git 은 모르므로 주석 차이뿐인 충돌은 MergeHub 가 푼다 아래
2026-09-14 지시서 6차 — 5차 C-1 에서 걸린 23가지를 A(망가뜨리는 것 5) · B(헷갈리는 것 8) · C(사소 1) · D(다시 끝까지)로 묶음 아래
2026-09-14 5차 C-1 — 만든 저장소(303개 · 충돌 22)로 병합을 MergeHub 만으로 커밋까지 해 봄. 고치지 않고 걸린 것 23가지를 적음. 가장 큰 것은 3분할 저장이 CRLF 를 LF 로 바꾸는 것 아래
2026-09-11 5차 B-2 — 폴더 비교를 훑기·가리기·세기 세 걸음으로 나눔. 메타데이터를 한 번만 묻고 가리는 일은 여러 갈래로. 전체 3.4배 · 빠른 4.7배 아래
2026-09-11 지시서 5차 고침 — 실제 소스를 더 읽지 않기로 함. 시험 재료는 우리가 만든다. B-2·C-1 을 그에 맞게 다시 씀 아래
2026-09-11 5차 B-1 — XAML 태그·속성·값을 갈라 칠함. 여러 줄에 걸친 여는 태그도 이어진다. 줄 넘김 상태를 깃발 묶음으로 넓혔다 아래
2026-09-11 5차 A-2 — Git 작업을 시작하는 자리에서 묻게 함. 가려서 묻는 것은 접고 전부 묻는다. 덤으로 4차 A-1 이 새던 자리 셋을 막음 아래
2026-09-11 5차 A-1 — 실제 저장소 2,091개로 인코딩을 확인(깨짐 0). 판별 코드가 두 군데 복사돼 있던 것을 한 곳으로 모으고, CP949 를 한 이름으로 부르게 함 아래
2026-09-10 4차 C-5 — 한 번 정하는 것들을 한자리에 모아 접고, 차이 이동을 개수 옆으로 아래
2026-09-10 4차 C-4 — 범례를 눌러 그 갈래로 이동. 0건은 흐리게 아래
2026-09-10 4차 C-3 — Git 탭의 원격 칸을 접을 수 있게. 로컬 경로 한 줄만 남고 세로 128px 가 목록으로 간다 아래
2026-09-10 엔터 고침의 되돌이 문제 — TextChanged 안에서 편집기 글을 갈아 끼워 캐럿이 엉켰다. 한 차례 뒤로 물림 아래
2026-09-10 엔터 반응 지연 — 줄 수가 바뀌면 0.6초 타이머만 기다리느라 화면이 비어 있었다. 그 자리에서 다시 맞추게 고침 아래
2026-09-10 4차 C-2 — 아래쪽 세 군데 상태 정보를 창 아래 한 줄로. 두 패널 코드 높이가 저절로 맞는다 아래
2026-09-10 4차 C-1 다시 — 머리글을 파일 이름만으로 줄인 것이 잘못이었다. 두 경로에서 다른 부분만 남기게 고침 아래
2026-09-10 4차 C-1 — 파일 비교에서 같은 경로가 나오던 세 자리를 하나로. 코드가 두 줄 더 보인다 아래
2026-09-10 4차 B-3 — 폴더 비교 목록을 파일 비교 화면에서 이전/다음으로 딛는다 (Ctrl+PageUp/PageDown) 아래
2026-09-10 4차 B-1 — 최근에 견준 파일 짝·폴더 짝을 기억해 위 줄에서 바로 연다. 없는 경로는 흐리게만 하고 지우지 않는다 아래
2026-09-10 4차 A-2 — 내보낸 보고서 머리글에 만든 사람을 넣음. 이름 판단을 머지 주석과 한 함수로 모았다 아래
2026-09-10 4차 A-1 — 저장하지 않은 편집이 말없이 사라지던 길 여덟 군데를 막음. 플랫폼에 세 갈래 확인 창을 새로 넣었다 아래
2026-09-10 4차 D-2 — 항목을 끝내면 상세·상태·한 줄을 각각 어디에 적을지 공통 규칙으로 못박음 아래
2026-09-10 4차 D-1 — 721줄짜리 진행상황을 history/ 의 날짜별 파일로 나누고 지시서를 작업지시/ 로 모음 아래
2026-09-09 3차 A 묶음 — 폴더 고르기 다운 · 화면 이동 결함 3가지 · 저장소 최상위 열기 5e667af af27800 93a507e b5bd06c / 플랫폼 595aa23 f664c31
2026-09-09 3차 B 묶음 — 3-Way 가로·세로 막대 · 행 어긋남 · Take Mine 179dffb
2026-09-09 3차 C·E 묶음 — 코드 툴팁 · 글자 잘림 · 폴더 복사 확인 창 · 세로 막대 · 폭 되돌림 · 머리 빈 공간 · 반영 색 · 코드 겹침 9a9c431 8def1ad 05c74fc 4f33cac / 플랫폼 5522ca0
2026-09-09 3차 D 묶음 — 주석만 다름 · C++ 전처리 · 3-Way 덩어리 반영 · 결과 내보내기 · 폴더 안 전체 검색 · 끌어다 놓기 5c8c942 451b624 32c0146 ee5d34c 373990b 196af0a
2026-09-08 저장소 개설 (MergeHub · UbisamPlatform 각각) 7719094 / 36ee902
2026-09-08 ④ Git 조작 5가지 — amend · stash 목록 · 커밋 간 비교 · blame · 변경분 추출 9956567
2026-09-08 ③ 3-Way — 자동 병합 · 충돌만 이동 · 병합 완료 판정 85c5e9e
2026-09-08 ① 폴더 비교 — 폴더째 복사·삭제 · 보기 필터 · 비교 취소 524a6a7
2026-09-08 ② 파일 비교 — 바꾸기 · 덩어리 반영 · 저장 형식 · 이진/그림 비교 de1a43c 55d9deb
2026-09-08 ⑤ 밖에서 부르기 — 명령줄 인자 · 탐색기 우클릭 아래

날짜별 상세

날짜 문서 내용
2026-09-14 2026-09-14-6차.md 6차 지시서 진행 중
2026-09-11 2026-09-11-5차.md 5차 지시서 진행 중
2026-09-10 2026-09-10-4차.md 4차 지시서 열세 항목. 전부 끝
2026-09-09 2026-09-09-3차.md 3차 지시서 A~E 스물세 항목. 항목마다 원인과 판단을 적었다
2026-09-08 2026-09-08-2주차.md 기능 덩어리 다섯 개(①~⑤)를 채운 주