다음을 통해 공유


GitHub Copilot 앱 현대화란?

GitHub Copilot 앱 현대화는 프로젝트를 최신 버전의 .NET으로 업그레이드하고 평가, 솔루션 권장 사항, 코드 수정 및 유효성 검사를 통해 Visual Studio 내에서 .NET 애플리케이션을 빠르고 자신 있게 Azure로 마이그레이션하는 데 도움이 되는 GitHub Copilot 에이전트입니다.

이 프로세스는 현대화를 간소화하고 개발자 생산성과 자신감을 향상시킵니다. GitHub Copilot 앱 현대화는 AI를 사용하여 개발자 속도, 품질 및 결과를 개선하는 올인원 업그레이드 및 마이그레이션 에이전트입니다.

이 에이전트를 사용하면 다음을 수행할 수 있습니다.

  • 최신 버전의 .NET으로 업그레이드합니다.
  • 기술을 마이그레이션하고 Azure에 배포합니다.
  • 특히 .NET Framework에서 업그레이드할 때 .NET 앱을 현대화합니다.
  • 애플리케이션의 코드, 구성 및 종속성을 평가합니다.
  • 올바른 Azure 리소스를 계획하고 설정합니다.
  • 문제를 해결하고 클라우드 마이그레이션에 대한 모범 사례를 적용합니다.
  • 앱이 성공적으로 빌드되고 테스트되었는지 확인합니다.

피드백 제공

피드백은 Microsoft와 이 에이전트의 효율성에 중요합니다. 제안 기능을 사용하고 Visual Studio의 문제 기능을 보고하여 피드백을 제공합니다.

필수 조건

GitHub Copilot 앱 현대화를 사용하려면 다음 항목이 필요합니다.

  • Windows 운영 체제

  • Visual Studio 2026 (또는 Visual Studio 2022 버전 17.14.17 이상).

  • 다음 선택적 구성 요소가 사용하도록 설정된 .NET 데스크톱 개발 워크로드:

    • GitHub Copilot
    • .NET용 GitHub Copilot 앱 현대화
  • 부조종사 라이선스 및 지원되는 구독 플랜:

    Copilot 액세스있는 GitHub 계정 사용하여 Visual Studio에 로그인합니다.

    지원되는 구독 계획:

    • 부조종사 프로
    • Copilot Pro(프로)+
    • 코파일럿 사업
    • Copilot Enterprise

    중요합니다

    구독을 변경하는 경우 Visual Studio를 다시 시작해야 합니다.

  • 코드는 C#으로 작성해야 합니다.

업그레이드 또는 마이그레이션을 시작하는 방법

업그레이드 또는 마이그레이션을 시작하려면 다음 단계에 따라 GitHub Copilot와 상호 작용합니다.

  1. Visual Studio에서 .NET 프로젝트 또는 솔루션을 엽니다.

  2. 다음 방법 중 하나를 사용하여 GitHub Copilot 앱 현대화 에이전트에 액세스합니다.

    솔루션 탐색기에서 솔루션 또는 프로젝트를 마우스 오른쪽 단추로 클릭하고 현대화를 선택합니다.

    -또는—

    GitHub Copilot 채팅 창을 열고 업그레이드 또는 마이그레이션 요청을 @modernize 뒤에 입력하세요.

  3. 에이전트에 @modernize 업그레이드 또는 마이그레이션할 내용을 알릴 수 있습니다.

.NET 프로젝트 업그레이드

현대화 에이전트는 C#으로 코딩된 프로젝트 업그레이드를 지원합니다. 지원되는 프로젝트 유형은 다음과 같습니다.

  • ASP.NET Core(및 MVC, Razor Pages 및 Web API와 같은 관련 기술)
  • Blazor
  • Azure Functions
  • 윈도우즈 프레젠테이션 파운데이션 (Windows Presentation Foundation)
  • Windows Forms
  • 클래스 라이브러리
  • 콘솔 응용 프로그램

업그레이드를 시작하는 방법을 알아보려면 GitHub Copilot 앱 현대화를 사용하여 .NET 앱을 업그레이드하는 방법을 참조하세요.

업그레이드 경로

지원되는 업그레이드 경로는 다음과 같습니다.

  • 이전 .NET 버전에서 최신 버전으로 프로젝트를 업그레이드합니다.
  • .NET Framework 프로젝트를 .NET으로 업그레이드합니다.
  • 새로운 기능을 사용하여 코드 베이스를 현대화합니다.
  • 구성 요소 및 서비스를 Azure로 마이그레이션합니다.

.NET 프로젝트를 Azure로 마이그레이션

현대화 에이전트는 자동화된 분석, AI 기반 코드 수정, 빌드 및 취약성 검사 및 배포 자동화를 결합하여 Azure로의 마이그레이션을 간소화합니다. 다음 기능은 에이전트가 준비 상태를 평가하고, 수정 사항을 적용하고, 마이그레이션 프로세스를 간소화하는 방법을 설명합니다.

  • 분석 및 지능형 권장 사항.

    Azure 마이그레이션에 대한 애플리케이션의 준비 상태를 평가하고 종속성 및 식별된 문제에 따라 맞춤형 지침을 받습니다.

  • 인공지능 기반 코드 수정.

    미리 정의된 모범 사례 코드 패턴을 적용하여 최소한의 수동 작업으로 현대화를 가속화합니다.

  • 자동 빌드 및 CVE 해결.

    자동으로 앱을 빌드하고 컴파일 오류 및 취약성을 해결하여 개발을 간소화합니다.

  • 원활한 배포.

    개발에서 클라우드로 코드를 빠르게 가져와서 Azure에 쉽게 배포합니다.

마이그레이션을 위한 미리 정의된 작업

미리 정의된 작업은 Azure 서비스를 사용하기 위한 업계 모범 사례를 캡처합니다. 현재 .NET용 GitHub Copilot 앱 현대화는 일반적인 마이그레이션 시나리오를 다루는 미리 정의된 작업을 제공합니다.

  • Azure SQL DB, Azure SQL MI 및 Azure PostgreSQL을 포함하여 Azure의 관리 ID 기반 데이터베이스로 마이그레이션

    보안 관리 ID 인증을 사용하여 온-프레미스 또는 레거시 데이터베이스(예: DB2, Oracle DB 또는 SQL Server)에서 Azure SQL DB, Azure SQL Managed Instance 또는 Azure PostgreSQL로 마이그레이션하여 데이터 계층을 현대화합니다.

  • Azure File Storage로 마이그레이션

    확장 가능한 클라우드 기반 파일 관리를 위해 로컬 파일 시스템에서 Azure File Storage로 파일 I/O 작업을 이동합니다.

  • Azure Blob Storage로 마이그레이션

    구조화되지 않은 데이터를 위해 온-프레미스 또는 클라우드 간 개체 스토리지 또는 로컬 파일 시스템 파일 I/O를 Azure Blob Storage로 대체합니다.

  • Microsoft Entra ID로 마이그레이션

    최신 ID 관리를 위해 Windows Active Directory에서 Microsoft Entra ID(이전의 Azure AD)로 인증 및 권한 부여를 전환합니다.

  • 관리 ID 및 Azure Key Vault를 사용하여 보안 자격 증명으로 마이그레이션

    구성 또는 코드의 일반 텍스트 자격 증명을 비밀 관리를 위해 안전한 관리 ID 및 Azure Key Vault로 대체합니다.

  • Azure Service Bus로 마이그레이션

    신뢰할 수 있는 클라우드 기반 메시징을 위해 레거시 또는 타사 메시지 큐(예: MSMQ 또는 RabbitMQ) 또는 Amazon SQS(AWS 단순 큐 서비스)에서 Azure Service Bus로 이동합니다.

  • Azure Communication Service 전자 메일로 마이그레이션

    확장 가능하고 안전한 전자 메일 배달을 위해 직접 SMTP 전자 메일을 Azure Communication Service로 대체합니다.

  • Apache Kafka용 Confluent Cloud/Azure Event Hub로 마이그레이션

    Confluent Cloud 또는 Azure Event Hubs를 사용하여 로컬 또는 온-프레미스 Kafka에서 관리되는 이벤트 스트리밍으로 전환합니다.

  • Azure에서 OpenTelemetry로 마이그레이션

    log4net, serilog 및 Windows 이벤트 로그와 같은 로컬 로깅 프레임워크에서 Azure의 OpenTelemetry로 전환합니다.

  • 관리 ID를 사용하여 Azure Cache for Redis로 마이그레이션 고가용성, 확장성 및 엔터프라이즈급 보안을 위해 메모리 내 또는 로컬 Redis 캐시 구현을 Azure Cache for Redis로 대체합니다.

작동 방식

현대화 에이전트에 앱을 업그레이드하거나 마이그레이션하도록 요청하면 Copilot는 프로젝트 및 해당 종속성을 분석한 다음 업그레이드 또는 마이그레이션에 대한 일련의 질문을 묻습니다. 이러한 질문에 대답하면 플랜이 Markdown 파일 형식으로 작성됩니다. Copilot에게 업그레이드 또는 마이그레이션을 진행하라고 지시하면 계획에 설명된 단계를 따릅니다.

Markdown 파일을 편집하여 업그레이드 단계를 변경하거나 더 많은 컨텍스트를 추가하여 계획을 조정할 수 있습니다.

업그레이드 또는 마이그레이션 수행

계획이 준비되면 코필로트에게 사용을 시작하라고 지시합니다. 프로세스가 시작되면 Copilot는 채팅 창에서 수행하는 작업을 알려주고 모든 단계의 상태를 나열하는 업그레이드 진행률 세부 정보 문서를 엽니다.

문제가 발생하면 Copilot는 문제의 원인을 식별하고 수정을 적용하려고 합니다. 코필로트가 문제를 해결할 수 없는 것처럼 보이면 도움을 요청합니다. 개입할 때 Copilot는 사용자가 변경한 내용을 학습하고 문제가 다시 발생하면 자동으로 적용하려고 시도합니다.

계획의 각 주요 단계는 로컬 Git 리포지토리에 커밋됩니다.

업그레이드 및 마이그레이션 결과

프로세스가 완료되면 Copilot에서 수행한 모든 단계를 설명하는 보고서가 생성됩니다. 이 도구는 프로세스의 모든 부분에 대해 Git 커밋을 만들므로 변경 내용을 쉽게 롤백하거나 변경 내용에 대한 자세한 정보를 가져올 수 있습니다. 보고서에는 Git 커밋 해시가 포함되어 있습니다.

또한 이 보고서는 업그레이드가 완료된 후 수행해야 하는 단계를 설명하는 다음 단계 섹션을 제공합니다.

테레메트리

이 도구는 프로젝트 형식, 업그레이드 의도 및 업그레이드 기간에 대한 데이터만 수집합니다. 데이터는 Visual Studio 자체를 통해 수집 및 집계되며 사용자 식별이 가능한 정보를 포함하지 않습니다. Microsoft의 개인 정보 보호 정책에 대한 자세한 내용은 Visual Studio 고객 환경 개선 프로그램을 참조하세요.