GitHub Copilot 현대화란?

GitHub Copilot 현대화는 C++ 프로젝트를 업그레이드하고 현대화하는 데 도움이 되는 GitHub Copilot 에이전트입니다. Visual Studio 내에서 평가, 솔루션 권장 사항, 코드 수정 및 유효성 검사를 안내합니다.

Scenarios

에이전트는 시나리오라는 엔드 투 엔드 현대화 워크플로 제공합니다. 각 시나리오는 특정 유형의 현대화 작업을 안내합니다.

Scenario Description 예제 프롬프트
MSVC 빌드 도구 업그레이드(MSBuild) MSBuild 기반 프로젝트(.sln, .vcxproj)를 최신 버전의 MSVC 빌드 도구로 업그레이드하고 업그레이드 관련 빌드 문제를 해결합니다. "설치된 최신 버전의 MSVC 빌드 도구를 사용하도록 프로젝트를 업그레이드합니다."
MSVC 빌드 도구 업그레이드(CMake) 최신 버전의 MSVC 빌드 도구로 프로젝트를 구성한 후 CMake 기반 프로젝트에서 업그레이드 관련 빌드 문제를 해결합니다. "최신 MSVC 빌드 도구를 사용하도록 프로젝트를 업그레이드하여 발생하는 빌드 문제 해결"

비고

다른 현대화 시나리오를 제안하거나 추천하려면 Developer Community를 방문하세요.

모든 시나리오에 대한 전체 참조는 시나리오 및 기술 참조를 참조하세요.

사전 요구 사항

시작하기 전에 다음이 있는지 확인합니다.

  • Visual Studio 2026 버전 18.7 이상.
  • GitHub Copilot 구독입니다.
  • MSBuild 기반 코드베이스(.sln, .vcxproj) 또는 CMake 기반 코드베이스입니다.

자세한 설정 단계는 C++용 GitHub Copilot 모더니제이션 설치를 참조하세요.

작동 방식

현대화 워크플로를 시작하려면 다음을 수행합니다.

  1. Visual Studio C++ 프로젝트 또는 솔루션을 엽니다.
  2. 에이전트 시작: 솔루션 탐색기 솔루션 또는 프로젝트를 마우스 오른쪽 단추로 클릭하고 Modernize 선택합니다. 또는 GitHub Copilot Chat@Modernize 입력합니다.
  3. 에이전트에 업그레이드할 내용을 알릴 수 있습니다.

Visual Studio 설치에 프로젝트에서 현재 사용하는 MSVC 빌드 도구가 없으면 프로젝트를 로드할 때 설치 도우미가 표시됩니다. 설치 도우미를 사용하여 누락된 MSVC 버전을 설치하거나 설치된 MSVC 버전으로 대상을 변경할 수 있습니다. 프로젝트의 대상을 변경하면 에이전트 현대화 워크플로로 직접 시작할 수 있는 정보 표시줄 메시지가 표시됩니다.

에이전트에 프로젝트를 업그레이드하도록 요청하면 Git 리포지토리에 있는 경우 새 분기를 만들라는 메시지가 표시됩니다. 그런 다음 3단계 워크플로를 실행합니다. 각 단계에서는 리포지토리 아래에 .github/upgrades/{scenarioId} Markdown 파일을 생성하므로 계속하기 전에 다음에 나오는 항목을 검토할 수 있습니다. 이전 시도에서 이미 존재하는 경우 .github/upgrades/{scenarioId} 에이전트는 계속하거나 새로 시작할 것인지 묻습니다.

1단계: 평가

에이전트는 프로젝트 구조, 종속성 및 코드 패턴을 검사하고 포괄적인 평가를 assessment.md저장합니다. 에이전트는 업그레이드 전략 및 호환성 처리와 같은 검토에 대한 전략 결정도 제공합니다.

2단계: 계획

에이전트는 평가를 자세한 사양으로 변환합니다. 이 파일은 plan.md 업그레이드 전략, 리팩터링 방법 및 위험 완화를 문서화합니다.

3단계: 실행

에이전트는 유효성 검사 조건을 사용하여 계획을 순차 작업으로 분할합니다 tasks.md. 각 태스크는 단일 변경 내용과 에이전트가 성공했는지 확인하는 방법을 설명합니다.

흐름 모드

에이전트는 다음 두 가지 흐름 모드를 지원합니다.

  • 자동: 일시 중지하지 않고 모든 스테이지에서 작동하며 정품 차단기에서만 중지됩니다. 이 모드는 간단한 업그레이드에 가장 적합합니다.
  • 안내형: 검토할 수 있도록 각 단계가 끝날 때마다 일시 중지합니다. 이 모드는 더 크거나 더 복잡한 업그레이드에 가장 적합합니다.

언제든지 모드를 수정 scenario-instructions.md 하거나 에이전트에 모드를 전환하도록 지시하여 모드를 전환할 수 있습니다. Automatic 모드에서 실행되는 경우 Copilot Chat 프롬프트 창에서 취소 단추를 사용하여 에이전트를 중지하고 에이전트가 Guided 모드에서 다시 시작하도록 지시해야 할 수 있습니다.

상태 관리

에이전트는 모든 상태를 저장합니다 .github/upgrades/{scenarioId}.

파일 Purpose
assessment.md 솔루션 분석
plan.md 순서가 지정된 작업 계획입니다.
tasks.md 라이브 진행률 대시보드.
scenario-instructions.md 에이전트의 영구 메모리입니다.
execution-log.md 모든 변경 내용의 감사 내역입니다.

Visual Studio 닫고 나중에 다시 시작할 수 있습니다. 에이전트는 상태 파일을 읽어 중단한 지점부터 다시 시작합니다.

Tip

다른 작업을 하면서 업그레이드를 더 오랜 기간에 걸쳐 진행하려는 경우, .github/upgrades 폴더를 브랜치에 별도의 커밋으로 커밋하는 것이 좋습니다. 커밋된 상태는 백업 역할을 하며 팀 구성원이 업그레이드 진행 상황을 볼 수 있도록 합니다. 별도의 커밋을 사용하면 해당 커밋을 리포지토리에 영구적으로 남기고 싶지 않을 경우 브랜치를 병합하기 전에 로컬 Git 기록에서 쉽게 제거할 수 있습니다.

피드백 제공하기

Microsoft 피드백의 가치를 높이고 이를 사용하여 에이전트를 개선합니다. 다음 옵션 중 하나를 사용하여 피드백을 남겨 둡니다.