GitHub Copilot yükseltme nedir?

GitHub Copilot yükseltme, projeleri daha yeni .NET sürümlerine hızlı ve güvenli bir şekilde yükseltmenize yardımcı olan bir GitHub Copilot aracısıdır. Visual Studio, Visual Studio Code, GitHub Copilot CLI ve GitHub.com genelinde değerlendirme, çözüm önerileri, kod düzeltmeleri ve doğrulamada size yol gösterir.

Bu ajanı kullanın:

  • .NET'in daha yeni bir sürümüne yükseltin.
  • Özellikle .NET Framework'ten yükseltme yaparken .NET uygulamanızı modernleştirin.
  • Uygulamanızın kodunu, yapılandırmasını ve bağımlılıklarını değerlendirin.
  • Uygulamanızın başarıyla derlendiğini ve test ettiğini doğrulayın.

Senaryo

Aracı, senaryolar olarak adlandırılan birden çok uçtan uca modernleştirme iş akışı sağlar. Her senaryo, belirli bir yükseltme veya geçiş türü boyunca size yol gösteren yönetilen bir iş akışıdır:

Scenario Description Örnek talimat
.NET sürüm yükseltme Eski .NET sürümlerinden .NET 8, 9, 10 veya sonraki sürümlere yükseltmeler. "Çözümümü .NET 10"
SDK stili dönüştürme Eski proje biçimini SDK stiline dönüştürür. "SDK stiline dönüştür"
Newtonsoft.Json yükseltmesi Newtonsoft.Json öğesini System.Text.Json ile değiştirir. "Newtonsoft.Json'dan yükseltme"
SqlClient yükseltmesi System.Data.SqlClient'dan Microsoft.Data.SqlClient'e yükseltme. "SqlClient'i Güncelleştir"
Azure İşlevleri yükseltmesi Azure İşlevleri işlem içi çalışan modelinden yalıtılmış çalışan modeline yükselter. "Azure İşlevleri'ımı yükselt"
Semantik Çekirdek'den Ajanlara Semantic Çekirdek Ajanlarını Microsoft Ajan Çerçevesine yükseltiyor. "SK ajanlarımı güncelle"
Aspire tümleştirmesi İç döngü ve Azure dağıtımı için destek eklerAspire. "Uygulamama ekle Aspire "
Aspire sürüm yükseltme Mevcut Aspire uygulamaları daha yeni sürümlere yükselter. "Sürümümü yükselt Aspire"
WebForms’tan Blazor’a yükseltme ASP.NET Web Forms uygulamalarını Blazor'a yükselter. "Web Forms uygulamamı Blazor'a geçirme"

Tüm senaryoların tam referansı ve 30'dan fazla yerleşik yükseltme becerisi için bakınız Senaryolar ve beceriler rehberi.

Geri bildirimde bulunun

Microsoft, geri bildiriminizi değerlendirir ve aracıyı geliştirmek için kullanır. Aşağıdaki seçeneklerden birini kullanarak geri bildirimde bulunmak için:

Prerequisites

Aracıyı kullanmadan önce geliştirme ortamınızda GitHub Copilot yükseltme ayarlayın. Yükleme adımları için bkz. Yükleme GitHub Copilot yükseltme.

.NET projelerini yükseltme

Yükseltme aracısı C# ve Visual Basic projelerini aşağıdaki türlerde yükseltmeyi destekler:

  • ASP.NET Core (ve MVC, Razor Pages ve Web API gibi ilgili teknolojiler)
  • ASP.NET Web Forms (Web formları için bir framework)
  • Blazor
  • Azure İşlevleri
  • Windows Presentation Foundation (WPF)
  • Windows Forms
  • WinUI
  • .NET MAUI ve Xamarin
  • Sınıf kitaplıkları
  • Konsol uygulamaları
  • Test projeleri (MSTest, NUnit ve xUnit)

Yükseltmeyi başlatmak için bkz. .NET uygulamasını GitHub Copilot yükseltme ile yükseltme.

Desteklenen yükseltme yolları

Aracı aşağıdaki yükseltme süreçlerini destekler:

Source Target
.NET Framework (herhangi bir sürüm) .NET 8 veya üzeri
.NET Framework (herhangi bir sürüm) .NET Framework 4.8.1
.NET Core 1.x–3.x .NET 8 veya üzeri
.NET 5 veya üzeri .NET 8 veya üzeri

.NET projelerini Azure'a geçirme

.NET uygulamalarınızı Azure geçirmek için GitHub Copilot modernleştirme aracısını kullanın. Modernleştirme aracısı veritabanı geçişi, depolama, kimlik, mesajlaşma ve dağıtım gibi Azure özel senaryoları işler.

Yükseltmeleri panoyla izleme

Yükseltme Panosu, GitHub Copilot CLI ve GitHub Copilot uygulamasındaki yükseltme oturumunun görsel bir görünümünü sağlar. Genel ilerleme durumunu, senaryoları, görevleri, projeleri, bağımlılıkları, değerlendirme sonuçlarını, yükseltme seçeneklerini ve aracı etkinliğini izlemek için panellerini kullanın.

Panoyu açmak için Copilot yükseltme oturumu sırasında göstermesini isteyin. Pano şu anda Visual Studio, Visual Studio Code veya diğer IDE'lerde kullanılamaz. Her panel hakkında ayrıntılı bilgi için bkz. Yükseltme Panosu ile yükseltmeleri izleme.

Nasıl çalışır?

Yükseltme veya geçiş işlemini başlatmak için bkz:

  1. Aracıyı şu yöntemlerden birini kullanarak başlatın:

    • Visual Studio: Çözüm Gezgini'da çözüme veya projeye sağ tıklayın ve Modernize öğesini seçin. Alternatif olarak GitHub Copilot Chat penceresini açın ve yazın@Modernize.
    • Visual Studio Code: GitHub Copilot Chat panelini açın ve @upgrade yazın.
    • GitHub Copilot CLI: @upgrade yazın ve ardından yükseltme veya geçiş isteğinizi yazın.
    • GitHub Copilot uygulaması: Agent seçicisinde Upgrade öğesini seçin.
  2. Aracıya neyi yükselteceğini veya neyi taşıyacağını söyleyin.

Yükseltme aracısına uygulamanızı yükseltmesini istediğinizde, Copilot önce Git deposunda çalışıyorsanız yeni bir dal oluşturmanızı ister. Ardından Copilot projenizi değerlendirir ve üç aşamalı bir iş akışı çalıştırır. Her aşama, devam etmeden önce sonraki adımları gözden geçirebilmeniz için deponuzda altında .github/upgrades/{scenarioId} Markdown dosyaları oluşturur. .github/upgrades/{scenarioId} önceki bir denemeden zaten varsa, Copilot devam etmek mi yoksa yeni bir başlangıç mı başlatmak isteyip istemediğinizi sorar.

Copilot kapsamlı bir değerlendirme oluşturmak için proje yapınızı, bağımlılıklarınızı ve kod desenlerinizi inceleyerek başlar. Dosyada assessment.md önemli değişiklikler, API uyumluluk sorunları, artık kullanılmayan desenler ve yükseltme kapsamı listelenir.

Değerlendirmeden sonra Copilot aşağıdaki üç aşamayı çalıştırır:

  1. Assessment: Copilot proje yapınızı, bağımlılıklarınızı ve kod desenlerinizi inceler, ardından yükseltme stratejisi (aşağıdan yukarı, yukarıdan aşağıya veya hepsi bir kerede), proje yükseltme yaklaşımı, teknoloji modernleştirme seçenekleri ve uyumluluk işleme gibi strateji kararlarını gözden geçirmeniz için sunar. Copilot, onaylanan kararları upgrade-options.md kaydeder.

  2. Planning: Copilot, değerlendirmeyi ve onaylanmış seçeneklerinizi ayrıntılı bir spesifikasyona dönüştürür. Dosya plan.md yükseltme stratejilerini, yeniden düzenleme yaklaşımlarını, bağımlılık yollarını ve risk azaltmalarını belgeler.

  3. Execution: Copilot planı tasks.md doğrulama ölçütleriyle sıralı ve somut görevlere böler. Her görev, tek bir değişikliği ve Copilot'un bu değişikliğin başarılı olduğunu nasıl onayladığını açıklar.

Yükseltme adımlarını ayarlamak veya ilerlemeden önce bağlam eklemek için içindeki .github/upgrades/{scenarioId} Markdown dosyalarından herhangi birini düzenleyin.

Yükseltme stratejileri

Değerlendirme aşamasında aracı çözümünüzü değerlendirir ve şu stratejilerden birini önerir:

Strateji En iyi kullanım alanları Description
Alttan yukarı Derin bağımlılık grafikleri içeren büyük çözümler Önce yaprak projelerini yükseltir, sonra yukarı doğru çalışır.
Yukarıdan aşağıya Ana uygulama hakkında hızlı geri bildirim Önce uygulama projesini yükseltir, ardından bağımlılıkları düzeltir.
Hepsi bir kerede Küçük, basit çözümler Tüm projeleri tek geçişle yükselter.

Akış modları

Ajan, girdiğiniz için ne kadar süre duraklayacağını kontrol eden iki akış modunu destekler.

  • Otomatik: Aracı, duraklatmadan tüm aşamalarda çalışır, sadece gerçek engelleyicilerde durur. Deneyimli kullanıcılar ve basit yükseltmeler için en iyi.
  • Rehberli: Devam etmeden önce değerlendirmeyi, planı ve görevleri gözden geçirebilmeniz için ajan her aşama sınırında duraklar. İlk kez kullananlar ve karmaşık çözümler için en iyi yöntemdir.

İstediğiniz zaman "duraklat" (kılavuzlu moda girmek için) veya "devam" (otomatik moda girmek için) diyerek modlar arasında geçiş yapın.

Durum yönetimi

Aracı, tüm yükseltme durumunu .github/upgrades/{scenarioId}/ içinde depolar. Klasör aşağıdakileri içerir:

Dosya Purpose
assessment.md Çözümünüzün analizi
upgrade-options.md Doğrulanmış yükseltme kararları
plan.md Sıralı görev planı
tasks.md Canlı ilerleme panosu
scenario-instructions.md Tercihler, kararlar ve özel yönergeler dahil olmak üzere aracının kalıcı belleği
tasks/{taskId}/task.md Görev başına kapsam ve bağlam
tasks/{taskId}/progress-details.md Görev başına yürütme notları ve sonuçları

Tüm durum bu klasörde yer aldığı için IDE'nizi kapatabilir, oturumlar arasında geçiş yapabilir, hatta geliştirme ortamları arasında geçiş yapabilirsiniz (örneğin, VS Code ile başlayıp Visual Studio devam edebilirsiniz). Yazılım aracı kaldığı yerden devam eder.

Tip

.github/upgrades/ Klasörü dalınıza işleyin. Kaydedilmiş durum bir yedekleme işlevi görür ve ekip üyelerinin yükseltme ilerleme durumunu görüntülemesine olanak tanır.

Yükseltmeyi gerçekleştirme

Her aşama tamamlandıktan sonra, oluşturulan dosyaları gerektiği gibi gözden geçirin ve değiştirin, ardından Copilot'a bir sonraki aşamaya devam etmesini söyleyin.

Execution aşamasına ulaştığınızda Copilot yükseltmeyi başlatmasını söyleyin. Copilot bir sorunla karşılaşırsa nedeni belirlemeye ve bir düzeltme uygulamaya çalışır. Copilot sorunu düzeltemezse yardımınızı ister. Müdahale ettiğinizde, Copilot yaptığınız değişikliklerden öğrenir ve sorun yeniden ortaya çıktığında bunları otomatik olarak uygulamayı dener.

Yükseltme sonuçları

Copilot her görevi çalıştırdıkça, tasks.md içindeki .github/upgrades/{scenarioId} dosyasını her adımın durumuyla güncelleştirir. Bu dosyayı gözden geçirerek ilerleme durumunu izleyin. Copilot işlemin her bölümü için bir Git işlemesi oluşturur, böylece değişiklikleri geri alabilir veya değişenleri gözden geçirebilirsiniz.

Yükseltme tamamlandığında, Copilot sohbet yanıtında sonraki adımları görüntüler.

Telemetry

Araç proje türleri, yükseltme amacı ve yükseltme süresi hakkında veri toplar. Geliştirme ortamı verileri toplar ve birleştirir ve kullanıcıya ait tanımlayıcı hiçbir bilgi içermez. Microsoft'un gizlilik ilkesi hakkında daha fazla bilgi için bkz. Visual Studio Müşteri Deneyimini Geliştirme Programı.