Şirket içi Azure DevOps'ta bir projeyi silmek için TFSDeleteProject kullanma

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

TFSDeleteProject kullanarak proje artık gerekli olmadığında projeyi Azure DevOps Server'den kaldırabilirsiniz.

Ayrıca, başarısız bir proje oluşturulduktan sonra silinmemiş olarak kalan bileşenler varsa, bunları kaldırmak için TFSDeleteProject kullanabilirsiniz.

Yönetici konsolunu kullanarak bir projeyi Azure DevOps Services silmek için bkz. Projeyi silme.

Uyarı

TFSDeleteProject projeyi kalıcı olarak yok eder ve daha sonra kurtarılamaz. TFSDeleteProject kullanmadan önce tüm önemli proje verilerini yedeklemeniz gerekir.

TFSDeleteProject komut satırı aracına erişmek için Visual Studio veya Takım Gezgini'nin yüklü olduğu bir Komut İstemi penceresi açın ve şunu girin:

cd %programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE

Windows'un 32 bit sürümünde %programfiles(x86)% öğesini %programfiles% ile değiştirin.

Önkoşullar

TFSDeleteProject komutunu kullanmak için Team Foundation Administrators güvenlik grubunun veya Project Administrators güvenlik grubunun üyesi olmanız gerekir.

Daha fazla bilgi için bkz. Azure DevOps Server için yönetici izinlerini ayarlama.

TFSDeleteproject [/q] [/force] [/excludewss] /collection:URL TeamProjectName

Seçenek

Açıklama

/S

İsteğe bağlı. Sessiz modu kullanın. Kullanıcıdan onay istemde bulunmayın.

/Kuvvet

İsteğe bağlı. Bazı bileşenler silinemese bile silme işleminin devam etmesi gerektiğini belirtir.

/excludewss

İsteğe bağlı. Projeyle ilişkilendirilmiş SharePoint sitesinin silinmeyeceğini belirtir. Diğer projelerin siteyi kullanmaya devam edebilmesi için mevcut siteyi korumak için bu seçeneği belirtin.

/collection:URL

Gereklidir. Proje koleksiyonunun URI'sini belirtir. URI için aşağıdaki biçimi kullanmalısınız: http://ServerName:Port/VirtualDirectoryName/CollectionName.

Bir sanal dizin belirtmezseniz, URI için aşağıdaki biçimi kullanmanız gerekir: http://ServerName:Port/CollectionName.

TeamProjectName

Gereklidir. Projenin adı. Ad boşluk içeriyorsa, tırnak içine alın.

Açıklamalar

Proje oluşturduğunuzda, Azure DevOps Server Azure DevOps Server barındıran sunucuda veri nesneleri oluşturur ve SharePoint Ürünleri'ni barındıran sunucuda ve SQL Server Reporting Services barındıran sunucuda veri nesneleri oluşturabilir.

Bir projeyi kaldırdığınızda, raporlar SQL Server Reporting Services otomatik olarak kaldırılır.

Bir projeyi kaldırdığınızda, SharePoint sitesini desteklemek için oluşturulan nesnelerin kaldırılıp kaldırılmayacağını seçebilirsiniz.

Ancak, bir hata Azure DevOps Server tüm nesneleri oluşturmasını veya silmesini engelleyebilir. Aşağıdaki bölümlerde bu sorunları gidermek için arka plan bilgileri, diğer kaynaklara bağlantılar ve sorunun nedenini belirlemenize, sorunu çözmenize ve gerektiğinde TFSDeleteProject çalıştırıldıktan sonra kalan veri nesnelerini silmenize yardımcı olacak belirli adımlar sağlanır.

TFSDeleteProject işlemi

TFSDeleteProject komut satırı aracını kullandığınızda, önce proje verilerini ve ardından proje Web sitelerini siler.

1. Aşama: TFSDeleteProject proje verilerini siler

İlk aşamada, TFSDeleteProject proje verilerini kaldırmak için aşağıdaki adımları otomatik olarak gerçekleştirir:

  1. TFSDeleteProject, silinmeye aday olan tüm bileşenlerin envanterini oluşturur.

    Bu, Test Yöneticisi, Team Foundation Derlemesi ve Team Foundation sürüm denetimi ile tümleşen bileşenleri içerir.

  2. TFSDeleteProject, Takım Gezgini'nde proje düğümünü görüntüleyen bileşeni siler.

  3. TFSDeleteProject, sürüm denetimi bilgilerini silinmek üzere işaretler, ancak bu bilgileri hemen silmez.

    Bilgiler, belirtilen projedeki tüm sürüm denetimi dallarını içerir, ancak projenin dışındaki başka dalları içermiyor.

    • Projede hem üst dal hem de alt dal varsa, TFSDeleteProject her ikisini de silinmek üzere işaretler.
    • Üst ve alt dallar farklı projelerdeyse, TFSDeleteProject yalnızca belirtilen dalı bayraklar.
    • Başka bir proje belirtilen projeden bir dalsa, TFSDeleteProject yalnızca belirtilen projeye bayrak ekler. Belirtilen proje silindiğinde, dal projesi artık olur.
  4. TFSDeleteProject bilgiler ve temel veriler, derleme tanımları, derleme aracıları ve projeyle ilişkili test sonuçları dahil olmak üzere derleme verilerini hemen siler. Araç, derleme bırakma konumlarını silmez.

    Aynı derleme bırakma konumunu kullanan bir proje oluşturmadan önce eski bir projenin derleme bırakma konumunu silmeniz gerekmez.

    Belirtilen proje büyük miktarda derleme verisi içeriyorsa, silme işlemi zaman aşımı süresi içinde tamamlanmayabilir.

    Bu sorunu geçici olarak çözmek için bkz. Time-Out Süresini Artırma ve ardından TFSDeleteProject'i yeniden çalıştırma.

  5. TFSDeleteProject, belirtilen projeye ait iş öğelerini ve iş öğesi alanlarını hemen siler ve paylaşılmayan tüm meta verileri siler.

    Belirtilen proje büyük miktarda iş öğesi verisi içeriyorsa, silme işlemi zaman aşımı süresi içinde tamamlanmayabilir.

    Bu sorunu çözmek için bkz. Time-Out Süresini Artırma ve ardından TFSDeleteProject'i yeniden çalıştırma.

2. Aşama: TFSDeleteProject proje web sitelerini siler

İkinci aşamada, TFSDeleteProject aşağıdaki verileri siler:

Önemli

Bu adımların tamamlanması uzun sürebilir ve bu süre boyunca sunucu performansını düşürebilir.

  • TFSDeleteProject Reporting Services'i barındıran sunucudaki raporları silmek için Reporting Services API'lerini kullanır.
  • TFSDeleteProject Proje portalı Web sitesini SharePoint Ürünlerini barındıran sunucudan siler.

Bu adım yalnızca projenin sitenin sahibi olduğunda ve site silme işlemi komut satırında dışlanmadıysa gerçekleşir. (Birden çok projenin tek bir siteye işaret ettiğini, ancak yalnızca birinin raporların/panoların varsayılan olarak bu projeyi kullandığı sahibi olabileceğini düşünün).

Not

Bir projeyi silmeden önce, portal ayarlarını doğrulayarak Reporting Services ve SharePoint Ürünleri'nin doğru proje URL'lerini kullandığını onaylayabilirsiniz. Daha fazla bilgi için bkz. Proje Portalı Ekleme.

TFSDeleteProject yukarıdaki tüm veri öğelerini başarıyla silerse Bitti iletisini döndürür.

Bu sonucu doğrulamak için bkz. Proje Bileşenlerinin Silindiğini Doğrulama.

Bir veya daha fazla bileşen kaldırılmazsa, tüm veri öğelerini silemiyor olsa bile silme işlemine devam etmek için /force seçeneğini kullanarak TFSProjectDelete'ı yeniden çalıştırabilirsiniz.

Bu seçenekle TFSDeleteProject, silemediği bir bileşeni atlar, hata iletisi döndürür, sonraki bileşeni siler ve proje meta verileriyle güvenlik ayarlarını olduğu gibi bırakır.

Silinmemiş olarak kalabilecek veriler

TFSDeleteProject başarıyla tamamlandıktan sonra aşağıdaki veriler dağıtımda kalabilir:

  • Küpteki verileri projeleyin.

    Proje verileri, küp yeniden derlenene kadar küpte kalır ve ambar denetleyicisi hizmeti, Azure DevOps veritabanlarından silinmiş olan tüm geçmiş derleme verilerini kaldırır.

  • Bırakma dosyaları ve klasörleri oluşturun.

    Derleme işlemi sırasında ikili dosyalar oluşturma, derleme günlük dosyaları ve test sonuçlarını içeren günlük dosyaları yayımlanır.

    Bu dosyaların konumları silinmez. Bu dosyaları kaldırmak istiyorsanız, bunları el ile kaldırmanız gerekir.

  • Paylaşılan iş öğesi izleme meta verileri.

    TFSDeleteProject, projeler arasında paylaşılan iş öğesi izleme meta verilerini silmez.

  • Paylaşılan kodu içeren sürüm denetimi raf kümeleri.

    Raf kümesinde birden çok projeden kod varsa sürüm denetimi raf kümeleri silinmez.

Proje silmeyi doğrulama

Proje düğümünün artık Takım Gezgini'nde görünmediğini ve proje portalı Web sitesi ile rapor klasörlerinin artık mevcut olmadığını onaylayarak proje silme işleminin başarısını doğrulayabilirsiniz.

  1. Takım Gezgini'ni açın ve projenin proje düğümü olarak görünmediğini doğrulayın.

  2. Internet Explorer'ı açın ve proje portalı Web sitesinin URL'sini yazın. Sitenin artık var olmadığını doğrulayın.

  3. Internet Explorer'da, Adres kutusuna aşağıdaki URL biçimlerinden birini kullanarak Reporting Services Web sitesinin URL'sini yazın:

    • http://ReportingServices/Reports
    • http://ReportingServices/Reports_TFSInstance
  4. Rapor Yöneticisi'nde Ayrıntıları Göster'i seçin.

  5. Silinen projenin klasörünün artık görünmediğini doğrulayın.

    TfsReports kök klasörünü ve ardından proje koleksiyonu için adlı klasörü seçin.

    Silinen projenin adına sahip bir klasör artık olmamalıdır.

  6. Raporlar veya Web sitesi kalırsa sonraki yordama bakın.

Kısmi proje silindikten sonra kalan bileşenleri kaldırma

Projeyi sildikten sonra proje portalı Web sitesi ve raporlar klasörü kalırsa, siteyi ve klasörü el ile kaldırın.

  1. Sildiğiniz proje için Reporting Services'i barındıran sunucuda oturum açın.

  2. Internet Explorer'ı açın ve Adres kutusuna aşağıdaki URL biçimlerinden birini kullanarak Reporting Services Web sitesinin URL'sini yazın:

    • http://localhost/Reports
    • http://localhost/Reports_TFSInstance
  3. Rapor Yöneticisi'nde Ayrıntıları Göster'i seçin.

  4. TfsReports kök klasörünü ve ardından proje koleksiyonu için adlı klasörü seçin.

  5. Silinen projenin onay kutusunu seçin.

  6. Sil’i seçin.

  7. Projenin raporlar klasörünü silmek istediğinizi onaylamak için Tamam'ı seçin.

  8. Silinen bir projenin proje portalı Web sitesini kaldırmak için Microsoft Web sitesinde aşağıdaki sayfaya bakın:

Windows SharePoint Services Siteleri Oluşturma, Düzenleme ve Silme.

Zaman aşımı süresini artırma

Varsayılan olarak, her Web hizmeti bir bileşeni silmek için TFSDeleteProject komut sorunlarının 10 dakika içinde tamamlanması gerektiğini çağırır. Altı çağrı varsa işlem bir saate kadar sürebilir. Büyük miktarda veriyle ilişkili bir projeyi silmek istiyorsanız, bu zaman aşımı süresini geçici olarak artırabilirsiniz.

Not

Zaman aşımı süresini artırdığınızda, değişiklik tüm Web hizmeti çağrılarını etkiler. Genel olarak, Web hizmeti çağrılarının sunucu performansını düşürmesini ve kullanıcıların uzun süreler boyunca kullanıcı arabirimini kullanmaktan kilitlenmesine neden olmasını önlemek için zaman aşımı süresini 10 dakika içinde tutmak istersiniz. Bu nedenle, proje başarıyla silindikten sonra zaman aşımı süresini 10 dakika olarak değiştirmeniz gerekir.

Önkoşullar

Bu yordamları tamamlamak için uygulama katmanı sunucusunda Windows Yöneticisi olmanız gerekir.

Önemli

Bilgisayarınızın kayıt defterini yanlış değiştirmek bilgisayarınızın kararsız olmasına neden olabilir. Kayıt defteri hakkında bilginiz yoksa, girdileri eklememeli veya kaldırmamalı ya da herhangi bir şekilde değiştirmemelisiniz.

  1. Uygulama katmanı sunucusunda oturum açın.

  2. Başlat, Çalıştır'ı seçin, regedit yazın ve tamam'ı seçin.

  3. Tarayıcı bölmesinde HKEY_ LOCAL_MACHINE genişletin:

    • Sunucu 32 bit işletim sistemi çalıştırıyorsa şunu genişletin: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\11.0\TeamFoundation\RequestSettings.
    • Sunucu 64 bit işletim sistemi çalıştırıyorsa şunu genişletin: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432\Microsoft\VisualStudio\11.0\TeamFoundation\RequestSettings.
  4. TeamFoundation\RequestSettings anahtarı yoksa, oluşturmak için şu adımları izleyin:

    1. TeamFoundation bağlam menüsünü açın, Yeni'nin üzerine gelin ve Anahtar'ı seçin.
    2. Anahtarı RequestSettings olarak adlandırın.
    3. RequestSettings için bağlam menüsünü açın, Yeni'nin üzerine gelin ve DWORD Değeri'ni seçin.
    4. Yeni değeri DefaultTimeout olarak adlandırın.
  5. DefaultTimeout bağlam menüsünü açın ve Değiştir'i seçin.

  6. Değer Verileri'nde, zaman aşımı süresini milisaniye olarak yazın ve Ondalık'ı seçin.

    Örneğin, zaman aşımı süresini 30 dakikaya çıkarmak için 1800000 yazın. Zaman aşımı süresini 10 dakikaya geri döndürmek için 600000 yazın.

  7. Tamam'ı seçin.

  8. Dosya menüsünde Çıkış'ı seçin.

Örnek

Aşağıdaki komut, Collection1 proje koleksiyonundaki Azure DevOps Server AdventureWorks1 sunucusundaki StoreFront projesiyle ilişkilendirilmiş tüm bileşenleri Ve Takım Gezgini'nden kaldırır.

TFSDeleteProject /force /collection:http://AdventureWorks1:8080/tfs/Collection1 StoreFront