Buradaki tüm cevaplar, her durumda işe yaramayan kısmi cevaplar gibi görünüyor. Bu cevabın, uygun izinlere sahip olduğunuzu varsayarak, her durumda işe yarayacağını düşünüyorum.
- Geliştirici Komut İstemi'ni açın. Benim durumumda, bunu VS 2019 için Geliştirici Komut İstemi ile test ettim.
- Bu komutu yazın:
tf workspaces
Sonuçların aynı yapıya sahip birkaç tablo listeleyebileceğini unutmayın. Yalnızca bir tablo görürseniz, diğer yanıtlardaki bazı varsayımlar sizin için işe yarayabilir. Ancak, iki veya daha fazla tablo görürseniz, bu Koleksiyon dizesi önemlidir! Örneklerimiz için, iki Koleksiyonunuz olduğunu varsayalım (ikisi diğerinden dördü farklı değil, diğerinden daha sıkıcıdır):
https://dev.azure.com/foo
ve https://bar.visualstudio.com/
Şansla, bu ikisinden hangisiyle çalışmak istediğinizi bileceksiniz. Ancak, hepsinde dolaşmanız gerekiyorsa, o zaman sadece bir koleksiyon yapmanız gerekir. Buradaki her "Koleksiyon" Azure DevOps'taki bir "Organizasyon" ile aynıdır (sanırım).
Bu Koleksiyon ayrıntısını kullanmazsanız, bir hata mesajı görebilirsiniz:
Kaynak kontrol sunucusu belirlenemedi.
- Ardından, kullanmak istediğiniz koleksiyon için bu komutu yazın:
tf workspaces /computer:* /owner:* /collection:https://dev.azure.com/foo
Bu, neyle uğraştığınıza dair çok daha eksiksiz bir resim verecektir. Aynı bilgisayardan bu repoya isabet eden birden fazla MSA ve Org hesabınız varsa bu özellikle kötü olur. Aslında, aynı görünen birden fazla girişiniz olabilir. Bunları şu anda bildiklerinize göre silmeye çalışırsanız, çalışmayabilir. Ancak daha fazla bilgi alabiliriz.
- Sonra, aynı komutu çalıştıracağız, ancak sonuna ekleyeceğiz
/format:xml
:
tf workspaces /computer:* /owner:* /collection:https://dev.azure.com/foo /format:xml
Bu, şimdi size bazı ek özelliklere sahip bir grup XML verir. Muhtemelen en çok önem verdiklerimiz Sahip Takma Adlarıdır. Bu, şimdi bu çalışma alanlarını gözden geçirmeniz ve silmeniz gereken eksik bilgilerdir. Bu ek bilgi olmadan, bir duvara çarpmak ve bir hata mesajıyla sıkışmak kolaydır:
Bir çalışma alanı belirtin.
Şimdi ihtiyacımız olan tüm bilgilere sahibiz. Ek OwernAliases
girişler göz önüne alındığında, silmek istediğiniz benzersiz girişi seçin (veya birden fazla ise tekrarlayın) ve aşağıdaki komutu kullanın (birkaç örnek listelenir):
tf workspace /delete /collection:https://dev.azure.com/foo
"MyWorkspaceName;Windows Live ID\John.Doe@hotmail.com"
tf workspace /delete /collection:https://dev.azure.com/foo
"MyWorkspaceName;John Doe"
tf workspace
/delete /collection https://dev.azure.com/foo
"MyWorkspaceName;2C3E8474-A39C-4785-8794-DC72F09981E6\John.Doe@Example.com"
GUID bir AAD dizini tanımlar ve tırnak takma adlarda olabilecek boşlukları işlemek için oradadır. "MyWorkspaceName", çalışma alanlarını listeleyen önceki sorgularınızdan gelir.
Bu çok kapsamlı bir yaklaşım olmadan, bu sorudaki diğer tüm cevapların sizin için başarısız olması mümkündür. Bu çabalardan bazıları yerel çalışma alanlarını temizlerken, yine de çakışabileceğiniz sunucu çalışma alanlarını temizlemeyecektir. Ayrıca, daha önce farklı bir hesap kullandıysanız, MSA'dan AAD hesabına geçtiğiniz gibi işler kıllı olabilir. Ve bir MSA hesabınız varsa işler gerçekten kıllı olur veaynı iş istasyonundan kullandığınız aynı e-posta adresine sahip birden çok AAD hesabı. Ve eğer bunların birden fazlası çalışma alanı için varsayılan adı kullandıysa süper çılgın bir kıllı olur: bilgisayarınızın ana bilgisayar adı. Benim durumumda, hepsi aynı Çalışma Alanı adı, Sahip adı ve Bilgisayar adı ile dört çalışma alanı vardı (yani XML biçimlendirmesi olmayan ilk sorgu 4 aynı kayıt vardı!).
Bunları yönetmek için bundan daha grafiksel bir yol olup olmadığını bilmiyorum. Baktım ve henüz bundan daha iyi bir yol bulamadım.
D:\jenkins\jobs\ProjectName1-Build\workspace
Test sırasında başka bir TFS kullanıcısı içeren bir TFS çalışma alanı ayarlamanız mümkün mü?