남잭슨의 개발 블로그
Cursor 사용 한도를 다 썼다고 모든 계정에서 자동으로 추가 결제되는 것은 아닙니다. 먼저 내 계정이 신규 요금 체계인 The X Subscription인지, 기존 legacy Cursor plan인지 확인하세요. 전자는 선불 크레딧과 자동 충전, 후자는 on-demand 사용 여부가 추가 비용을 판단하는 출발점입니다. Cursor 공식 요금 체계 비교확인 순서는 요금제 → 추가 사용 설정 → 사용량 → 청구서입니다. 사용량 화면의 숫자 하나만 보고 결제 금액으로 받아들이면, 이미 산 크레딧을 사용하는 상황과 새 결제가 발생한 상황을 혼동하기 쉽습니다.구독·자동 충전·소비 한도·청구서를 따로 확인하는 AI 생성 설명용 일러스트입니다. 실제 요금제 화면이나 결제 내역이 아닙니다.1. 플랜 이름과 결제 ..
Claude Code의 /rewind는 파일을 어떻게 수정했는지에 따라 복구 범위가 달라집니다. 내장 편집 도구가 수정한 파일은 추적하지만, Bash만 사용해 바꾼 파일은 그대로 남을 수 있습니다. 반대로 편집 도구가 먼저 수정한 파일은 이후의 Bash 변경도 복구 대상이 될 수 있습니다. Claude Code 공식 복구 범위에서 이 조건을 구분합니다.따라서 “되돌리기 성공”이라는 메시지보다 어느 시점으로, 어떤 파일이 돌아갔는지 확인하는 것이 중요합니다. 세 파일에 서로 다른 방식으로 변경을 만든 뒤 비교하면 이 차이를 직접 확인할 수 있습니다.체크포인트로 추적된 파일과 그렇지 않은 파일을 나눠 표현한 AI 생성 설명용 일러스트입니다. 실제 복구 결과는 아닙니다.대화만 되돌릴지, 파일도 되돌릴지 먼저 ..
Next.js에서 hydration failed가 뜨면 서버가 준비한 HTML과 브라우저의 첫 렌더 결과가 같은지부터 확인합니다. 브라우저에서만 알 수 있는 값은 동일한 초기 화면을 보여 준 뒤 읽을 수 있지만, 잘못된 HTML 구조나 서로 다른 데이터는 원인을 따로 고쳐야 합니다.이 글은 App Router에서 초기 HTML을 제공하는 페이지를 기준으로 설명합니다. 코드는 동작 원리를 보여 주는 설명용 예제이며, 특정 프로젝트에서 실행해 확인한 결과는 아닙니다. 실제 오류 문구와 표시 방식은 Next.js·React 버전에 따라 다를 수 있습니다.서버와 브라우저의 첫 출력을 맞춘 뒤 필요한 부분을 갱신하는 AI 생성 설명용 일러스트입니다. 실제 렌더링 화면이 아닙니다.1. 'use client'를 붙였..
이미 push한 커밋의 변경을 취소하면서 공유된 기록을 이어 가려면 git revert를 먼저 검토합니다. 잘못된 커밋을 기록에서 지우는 대신, 그 변경을 반대로 적용하는 새 커밋을 만듭니다. 파일이 되돌아가는 것과 과거 커밋이 없어지는 것은 다른 일입니다. Git의 revert 설명여기서는 일반 커밋 한 개를 로컬 원격 저장소에 push한 뒤 revert하고, 다른 작업 폴더에서 pull해 결과를 확인했습니다. GitHub나 운영 서비스에서 실행한 사례는 아닙니다. 충돌이 없는 작은 예제로 파일과 기록의 변화를 구분해 보겠습니다.기존 커밋 뒤에 되돌림 커밋을 추가하는 개념을 표현한 AI 생성 설명용 일러스트입니다. 실제 저장소 화면이 아닙니다.실습 결과: 파일은 돌아왔고, 커밋은 하나 늘었다2026년 ..
Google Identity Services(GIS) 웹 로그인에서는 승인된 출처에 버튼 페이지의 프로토콜·호스트·포트를 등록합니다. 리다이렉트로 결과를 받는 경우에는 서버 경로까지 포함한 URI도 등록해야 합니다. 두 설정은 같은 웹 클라이언트 ID를 기준으로 비교하세요. GIS 설정 문서대상은 GIS 웹 로그인 버튼입니다. 로그인은 ID 토큰으로 사용자 신원을 확인하는 과정이며, Drive·Calendar 등 Google API 접근 권한 요청은 별도 흐름입니다. 아래 결과 수신 표는 JavaScript API 기준이고, HTML API의 차이도 따로 설명합니다. 로그인 인증과 API 권한의 구분 origin_mismatch 또는 승인된 출처 설정 확인 redirect_uri_mismatch 또는..
