Team Foundation Server 2018 Sürüm Notları


| Geliştirici Topluluğu Sistem Gereksinimleri ve Uyumluluk | Lisans Koşulları | TFS DevOps Blogu | SHA-1 Karmaları | En Son Visual Studio 2019 Sürüm Notları


Not

Bu sayfaya İngilizce olmayan bir dildeki sürümden erişiyor ve en güncel içeriği görmek istiyorsanız lütfen bu Sürüm Notları sayfasının İngilizce versiyonunu ziyaret edin. Sayfa alt bilgisinde dünya simgesine tıklayıp istediğiniz dili seçerek bu sayfanın dilini değiştirebilirsiniz.


Team Foundation Server 2018 ile ilgili bilgileri bu makalede bulabilirsiniz. İndirmek için düğmeye tıklayın.

Team Foundation Server'ın en son sürümünü indirme

Team Foundation Server 2018 hakkında daha fazla bilgi edinmek için Team Foundation Server Gereksinimleri ve Uyumluluğu sayfasına bakın. Diğer TFS 2018 ürünlerini indirmek için visualstudio.com/downloads sayfasını ziyaret edin.

Daha fazla bilgi için lütfen TFS Yükleme sayfasına bakın.


Sürüm Notları SimgesiYayın Tarihi: 15 Kasım 2017

TFS 2018’deki Yeniliklerin Özeti

Team Foundation Server 2018’e değerli birçok yeni özellik ekledik. Önemli noktalardan bazıları:

TFS 2018’deki Yenilikler videosu

XAML Derlemesi

XAML derlemesini ilk olarak TFS 2018 RTW ve Güncelleştirme 1’de kaldırıldı olarak listelemiştik. Ancak bu durum, yükseltme tamamlandıktan sonra çok sayıda müşterimizin yükseltme işlemini yapamaması ve derlemeyi yeniden etkinleştirmek için desteğe başvurmasına neden oldu. TFS 2018 Güncelleştirme 2’de XML derlemesi etkin, ancak kullanım dışıdır. Bu, XAML Derlemesine daha fazla yatırım yapılmadığı ve Microsoft Test Yöneticisi’nin (MTM) artık XAML derlemelerinin kullanımını desteklemediği anlamına geliyor. Yeni derleme tanımı biçimlerinden birine dönüştürmenizi öneririz. TFS 2018 Güncelleştirme 2 ile XAML denetleyicilerinizi bağlayıp XAML derlemelerini çalıştırmaya devam edebilirsiniz. Daha fazla bilgi

TFS 2018 RTW’den Kaldırılan Özellikler


TFS 2018’deki Yeniliklerin Ayrıntıları

İş Öğesi İzleme

Web’de Proje Oluşturma Sihirbazı

Web erişiminden Takım Projesi oluşturma deneyimi geliştirildi. Artık Visual Studio istemcisinde Takım Projesi oluştururken kullanabildiğiniz özelliklerin çoğunu içeriyor. Web arabirimini kullanmanın avantajı, eşleşen bir Visual Studio sürümü gerektirmemesidir. Visual Studio ile web sürümü arasındaki fark, web sürümünün raporlarınızı SSRS’de sağlamamasıdır. Takım Projesi oluşturma deneyiminin web sürümünü kullandıysanız Uygulama Katmanında tfsconfig komutunu çalıştırarak SSRS raporlarını sağlayabilir veya bunları güncelleştirebilirsiniz.

Web’de İşlem Şablonu Yöneticisi

TFS 2018 sürümüyle birlikte web erişimini kullanarak işlem şablonlarınızı karşıya yükleyebilirsiniz. Web arabirimi, işlem şablonlarınızla etkileşim kurmak için Visual Studio’nun doğru sürümünü yüklemenizi gerektirmediğinden çok daha kolay bir deneyimdir. Visual Studio 2017 Güncelleştirme 4 ve önceki sürümler İşlem Şablonu Yöneticisi iletişim kutusunda görünmeye devam etse de web arabirimini kullanmanız önerilir. Visual Studio 2017 Güncelleştirme 5 ve üzeri sürümlerde otomatik olarak web’e yönlendirilirsiniz.

İş öğesi formu üst bilgisini özelleştirme

Artık mevcut denetimleri değiştirerek veya işleminizle ilgili olmayan denetimleri gizleyerek iş öğesi formu üst bilgi alanını özelleştirebilirsiniz. Bu, Alan yolunu özel bir Takım alanıyla değiştirme, takımlarınız Kanban odaklıysa Yineleme’yi gizleme ve Neden alanını özel bir alanla değiştirme olanağı sağlar. Durum alanı gizlenemez veya değiştirilemez.

İpucu

Daha fazla bilgi için WebLayout ve Denetim öğeleri belgelerine bakın.

Mobil iş öğesi formu kaynağı

İş öğeleri için en iyi duruma getirilmiş bir genel görünüme sahip, uçtan uca tam bir deneyim sunuyoruz (Şekil 1) . Size atanmış, takip etmekte olduğunuz, ziyaret ettiğiniz veya yakın zamanda düzenlediğiniz öğelerle telefonunuzda etkileşimde bulunmak için kolay bir yol sağlar.

Mobil iş öğesi sorgusu
(Şekil 1) Mobil iş öğesi sorgusu

Bu deneyim harika görünmekle kalmaz, tüm alan türleri için iyileştirilmiş denetimleri de destekler (Şekil 2) .

Mobil iş öğesi formu
(Şekil 2) Mobil iş öğesi formu

Yeni mobil gezinti ile (Şekil 3) kullanıcılar, TFS'nin mobil kullanıma hazır diğer bölümlerine ulaşabilir ve diğer hub'larla etkileşime geçmek zorunda olmaları durumunda tam masaüstü sitesine geri dönebilir.

Mobil gezinti
(Şekil 3) Mobil gezinti

Kapsamları, Kanban panolarını, sprint’leri ve sorguları filtreleme

Sunduğumuz tüm iş öğesi izleme kılavuzu deneyimleri (sorgular, kapsamlar, Kanban panoları, sprint kapsamları ve test çalışması yönetimi) artık ortak, tutarlı filtreleme bileşenimizi (Şekil 4) kullanıyor. Görüntülenen sütunlarda anahtar sözcük filtresi uygulama ve etiketleri seçmenin ötesinde iş öğesi türlerini, durumları ve atanan kişileri de filtreleyerek aradığınız iş öğelerine hızla ulaşabilirsiniz.

Sorguda filtreleme
(Şekil 4) Sorguları filtreleme

Bir Kanban kartındaki boş alanları göstermek için genişletin

Bugün, karta ek alanlar ekleme ve pano ayarlarında boş alanları gizleme(Şekil 5) seçeneğiniz vardır. Bu özelliğin olumsuz tarafı, boş bir alan gizlendikten sonra bu alanı güncelleştirmenin tek yolunun iş öğesi formunu açmak olmasıydı. Kanban kartlarında yeni kullanıma sunulan genişletme seçeneği ile artık panonun tamamında boş alanları gizlemenize rağmen bir karttaki belirli bir alanı güncelleştirmek için tek tıklamayla erişim imkanınız vardır. Gizli kartı güncelleştirmek için tek yapmanız gereken, kartın üzerine gelip kartın altındaki aşağı bakan köşeli çift ayracı bulmaktır.

Gizli alan
(Şekil 5) Kanban kartındaki gizli alan

Alanı güncelleştirmek için kartın alt kısmındaki aşağı köşeli çift ayraca tıklayın (Şekil 6).

Gizli alanı güncelleştirme
(Şekil 6) Kanban kartındaki gizli alanı güncelleştirme

Uzantılar iş öğesi kaydetmeyi engeller

İş öğesi formu özel denetimleri, grupları ve sayfaları artık iş öğesi formu kaydedilmeden önce verilerin doğrulanması ve kullanıcının gerekli bilgileri doldurduğundan emin olunması için iş öğesi kaydını engelleyebilir.

Satır içi eklenti Teslim Planları

Yeni özellik fikirleri her an gelebilir, bu nedenle yeni özellikleri doğrudan Teslim Planlarınıza eklemeyi kolaylaştırdık (Şekil 7). Fareyle üzerine gelindiğinde kullanılabilen Yeni öğe düğmesine tıklayın, bir ad girin ve Enter tuşuna basın. Beklediğiniz alan yolu ve yineleme yolu ile yeni bir özellik oluşturuldu.

Satır içi teslimat planları ekleme
(Şekil 7) Satır içi eklenti teslim planları

Sürüm denetimi

Çatallar

TFS 2018’de Git çatalları için destek eklenmiştir (Şekil 8) . Çatal, deponun sunucu tarafındaki bir kopyasıdır. Çatalları kullanarak, doğrudan işleme erişimi vermeden birçok farklı kişinin deponuza katkı sağlamasına izin verebilirsiniz. Bu kişiler, çalışmalarını deponun kendilerine ait çatallarına işleyebilir. Bu sayede, değişiklikleri merkezi depoya kabul etmeden önce bir çekme isteğinde gözden geçirme fırsatınız olur.

Git çatalları
(Şekil 8) Git çatalları

GVFS

Git Sanal Dosya Sistemi (GVFS) artık destekleniyor. GVFS, Git’in dosya sisteminde çalışma şeklini sanallaştırarak ve iyileştirerek Git depolarının milyonlarca dosyaya ölçeklendirilmesine olanak sağlar.

Web’i kullanarak bir depoda klasör oluşturma

Artık Git ve TFVC depolarınızda web üzerinden klasörler oluşturabilirsiniz (Şekil 9) . Bu özellik, kullanımdan kaldırılma sürecine girecek olan Klasör Yönetimi uzantısının yerini alacaktır.

Klasör oluşturmak için komut çubuğunda veya bağlam menüsünde Yeni > Klasör'e tıklayın:

Yeni klasör seçeneği
(Şekil 9) Yeni klasör seçeneği

TFVC için, bir klasör adı belirtip kullanıma almanız gerekecektir. Git için, boş klasörlere izin verilmediğinden ayrıca bir dosya adı belirtmeniz, isteğe bağlı olarak dosyayı düzenlemeniz ve daha sonra işlemeniz gerekecektir.

Git’te ayrıca Yeni dosya iletişim kutusu (Şekil 10) , alt klasörler oluşturmak üzere eğik çizgileri kabul edecek şekilde geliştirildi.

Yeni dosya iletişim kutusu
(Şekil 10) Yeni dosya iletişim kutusu

Dosya mini haritası

Artık, dosyaları görüntülerken veya düzenlerken koda hızlıca göz atmak için dosyanın mini haritasını görüntüleyebilirsiniz (Şekil 11) . Mini haritayı açmak için, Komut Paleti’ni (F1 veya sağ tıklama) açın ve Mini Haritayı Aç/Kapat’ı seçin.

Dosya mini haritası
(Şekil 11) Dosya mini haritası

Köşeli ayraç eşleştirme

Artık, bir dosyayı düzenlerken veya görüntülerken, sol tarafta köşeli ayraçlarınızı eşleştirmeyi kolaylaştıran kılavuzlar görüntülenir (Şekil 12) .

Köşeli ayraç eşleştirme
(Şekil 12) Köşeli ayraç eşleştirme

Boşluğu açma/kapatma

Artık, bir dosyayı görüntülerken veya düzenlerken boşluk seçeneğini açabilir veya kapatabilirsiniz. Fark işlemi gerçekleştirirken boşluk seçeneğini açmanıza veya kapatmanıza olanak sağlayan özellik hala geliştirme aşamasındadır. Boşlukları görüntülemek için (Şekil 13) , Komut Paleti’ni (F1 tuşuna basarak veya sağ tıklayarak) açın ve Boşluğu Aç/Kapat’ı seçin. Bu, boşlukları sekmelerden ayırt etmenize olanak sağlar.

Boşluğu açma/kapatma
(Şekil 13) Boşluğu açma/kapatma

TFVC depoları için web’den düzenlemeyi kapatma ayarı

TFVC kullanan takımlar, genellikle kod kalitesinden emin olmak için Visual Studio’daki iade ilkelerini kullanır. Ancak, iade ilkeleri istemcide uygulandığından web’den düzenlenen kod aynı ilkelere tabi olmaz.

Bazı müşteriler, iade ilkelerini atlayan değişikliklere karşı koruma sağlamak amacıyla web’den düzenlemeyi devre dışı bırakmayı sağlayan bir özellik istedi. TFVC için proje/depo temelli olarak web’den düzenlemeyi (ekleme silme, yeniden adlandırma ve düzenleme) kapatmaya yönelik bir özellik ekledik.

Dosyalar sayfasından web'den düzenlemeye izin vermemek için Ayarlar'a ve ardından Sürüm Denetimi'ne gidin (Şekil 14). Ağaçtaki TFVC deposuna tıklayın, Seçenekler özetine gidin ve Bu TFVC deposu için web’den düzenlemeyi etkinleştir seçeneğinin işaretini kaldırın. Web’den düzenleme varsayılan olarak etkindir.

Not

Projeye Genel Bakış sayfasından BENİOKU dosyasının düzenlenmesi bundan etkilenmez.

Web'de düzenlemeyi kapatma
(Şekil 14) Web’den düzenlemeyi kapatma

Bir projede web’den düzenleme devre dışıyken web düzenlemesi yapmaya çalıştığınızda, buna izin verilmediğine ilişkin bir bildirim alırsınız (Şekil 15) .

Web'de düzenlemeye izin verilmiyor iletişim kutusu
(Şekil 15) Web’den düzenlemeye izin verilmiyor iletişim kutusu

Eski dalları tanımlama

Artık ihtiyacınız olmayan dalları silerek deponuzu düzenli tutmanız, takımların önem verdikleri dalları bulmasına ve doğru ayrıntı düzeyinde sık kullanılanlar ayarlamasına imkan tanır. Bununla birlikte, deponuzda çok sayıda dal varsa hangilerinin etkin olmadığını ve silinebileceğini belirlemek zor olabilir. Artık “eski” dalları (3 aydan eski işlemeleri işaret eden dallar) daha kolayca bulabilirsiniz. Eski dallarınızı görmek için Dallar sayfasındaki Eski özetine gidin (Şekil 16) .

Eski dallar
(Şekil 16) Eski dallar

Silinen bir dalı arama ve yeniden oluşturma

Bir dalı yanlışlıkla sunucudan sildiğinizde dala ne olduğunu anlamak zor olabilir. Artık silinen bir dalı arayabilir, kimin ne zaman sildiğini görebilir ve isterseniz yeniden oluşturabilirsiniz.

Silinen bir dalı aramak için dal arama kutusuna dalın tam adını yazın. Metinle eşleşen mevcut dalları döndürür. Silinen dallar listesinde tam eşleşme araması yapma seçeneğini de görebilirsiniz. Silinen dalları aramak için bağlantıya tıklayın (Şekil 17) .

Silinen dalları arama
(Şekil 17) Silinen dalları arama

Bir eşleşme bulunursa dalı kimin ne zaman sildiğini görebilirsiniz. Dalı geri yükleme seçeneğiniz de vardır (Şekil 18) .

Silinen dalları geri yükleme
(Şekil 18) Silinen dalları geri yükleme

Dal geri yüklenirse son işaret ettiği işlemede yeniden oluşturulur. Ancak, ilkeler ve izinler yeniden oluşturulmaz.

Bir ön ekle başlayan dallarda işleme arama

Tüm dalların bir metin ön ekine sahip olduğu hiyerarşik biçimli bir dal yapınız varsa, bu özellik ilgili metin ön ekine sahip tüm dallarda bir işlemeyi bulur. Örneğin, bir işlemenin "dev" ön ekli tüm dallara gidip varmadığını görmek istiyorsanız, arama kutusuna "dev" yazıp "dev" ile başlayan dallarda ara'yı seçmeniz yeterlidir (Şekil 19).

İşleme arama
(Şekil 19) İşleme arama

İşleme ayrıntıları sayfasında daha zengin bir çekme isteği açıklama balonu

İşleme ayrıntıları sayfasındaki çekme isteği açıklama balonu, daha iyi tanılama gerçekleştirebilmeniz için daha fazla ilgili bilgi gösterir (Şekil 20) . Artık açıklama balonunda işlemeyi herhangi bir dala ilk kez sunan ilk çekme isteği ve varsayılan dalla ilişkili çekme isteği bilgileri de gösterilir.

Çekme isteği açıklama balonu
(Şekil 20) Çekme isteği açıklama balonu

Kod’da ağaç görünümünü filtreleme

Artık sadece dosyalarınıza ulaşabilmek için bir işlemenin değiştirmiş olabileceği tüm dosyalara bakmak zorunda değilsiniz. İşleme ayrıntıları, çekme istekleri, raf kümesi ayrıntıları ve değişiklik kümesi ayrıntıları sayfasındaki ağaç görünümü artık dosya ve klasör filtrelemeyi destekliyor. Bu özellik, klasör adına göre filtre uyguladığınızda bir klasörün alt dosyalarını, dosya adına göre filtre uyguladığınızda ise dosya hiyerarşisini göstermek amacıyla bir dosyanın daraltılmış ağaç görünümünü görüntüleyen akıllı bir filtredir.

İşleme ağacında bir dosya veya klasörü bulma filtresi (Şekil 21) ve (Şekil 22) :

Dosya veya klasör bulma
(Şekil 21) Dosya veya klasör bulma
Filtrelenmiş görünüm
(Şekil 22) İşleme ağacında filtrelenmiş görünüm

Dal güncelleştirmeleri sayfası artık Göndermeler oldu

Dal Güncelleştirmeleri sayfasının değeri son derece yüksektir. Ancak, Geçmiş merkezinin altında bir özet olarak gizliydi. Artık dal güncelleştirmeleri sayfası Kod altında İşlemeler, Dallar, Etiketler ve Çekme İstekleri ile birlikte Göndermeler(Şekil 23) adlı bir hub olarak görünür. Gönderimler sayfasının yeni URL'si şudur: \<tfsserverurl\>/\<projectname\>/_git/\<reponame\>/pushes. Eski URL’ler çalışmaya devam edecektir.

Göndermeler sayfası
(Şekil 23) Göndermeler sayfası

Aynı zamanda, hub yalnızca işlemeleri gösterdiğinden Geçmiş hub'ı artık İşlemeler(Şekil 24) olarak yeniden adlandırıldı. İşleme listesi görünümü yalnızca üzerinde beklendiğinde ayrıntılı zaman bilgisi gösterdiğinden, kullanıcıların işlemeyle ilgili sorunları gidermekte zorlandığına ilişkin geri bildirim aldık. İşleme listesi görünümü artık örneğiniz genelinde tarih ve saati gg.aa.yy ss:dd biçiminde gösteriyor. İşlemeler sayfasının yeni URL'si şudur: \<tfsserverurl\>/\<projectname\>/_git/\<reponame\>/commits. Eski URL’ler çalışmaya devam edecektir.

İşlemeler sayfası
(Şekil 24) İşlemeler sayfası

Dosyalar’dan İşlemeler’e geçişte dosya adını koruma

Kullanıcılarımız, Kod merkezinin Dosyalar özetindeki belirli bir dosya ile dizine filtre uygulayıp daha sonra Geçmiş özetine geçtiklerinde, işlemenin 1.000’den fazla dosyayı değiştirmiş olması durumunda dosya adının kalıcı olmadığına ilişkin bir geri bildirimde bulundu. Bu sorun nedeniyle, kullanıcıların dosyayı bulmak için daha fazla dosya yüklemesi ve içeriği filtrelemesi gerekiyor, bu da üretkenliği etkiliyordu. Geliştiriciler normalde aynı dizinde çalışır ve değişiklikleri izlerken içinde çalıştıkları dizinlere bağlı kalmak ister. Artık bir işlemede değiştirilen dosya sayısından bağımsız olarak Kod merkezi özetleri arasında geçiş yaparken dosya adının kalıcı olması sağlanıyor. Bu, istediğiniz dosyayı bulmak için Daha Fazla Yükle’ye tıklama gereksiniminizin ortadan kalktığı anlamına geliyor.

Git etiketlerini görüntüleme

Deponuzdaki tüm etiketleri Etiketler sayfasında görüntüleyebilirsiniz (Şekil 25) . Tüm etiketlerinizi sürümler halinde yönetiyorsanız, bir kullanıcı etiketler sayfasını ziyaret ederek tüm ürün sürümlerine genel olarak bakabilir.

Git etiketlerini görüntüleme
(Şekil 25) Git etiketlerini görüntüleme

Basit ve açıklamalı etiketleri birbirinden kolayca ayırt edebilirsiniz. Açıklamalı etiketlerde ilişkili işlemenin yanı sıra etiketi oluşturan kişi ve oluşturma tarihi gösterilirken, basit etiketlerde yalnızca işleme bilgileri gösterilir.

Git etiketlerini silme

Bir etiketi uzak deponuzdan silmenizi gerektirecek durumlar olabilir. Bunun nedeni, etiket adındaki bir yazım yanlışı ya da yanlış işlemenin etiketlenmesi olabilir. Etiketler sayfasında etiketin bağlam menüsüne tıklayıp Etiketi sil'i seçerek web kullanıcı arabiriminden etiketleri kolayca silebilirsiniz (Şekil 26).

Uyarı

Uzak depolardaki etiketler silinirken dikkatli olunmalıdır.

Git etiketlerini silme
(Şekil 26) Git etiketlerini silme

Git etiketlerini filtreleme

Eski depolarda etiket sayısı zamanla çok yüksek bir seviyeye ulaşabileceği gibi, hiyerarşiler halinde oluşturulmuş etiketler içeren ve etiketleri bulmanın zor olduğu depolar da olabilir.

Etiketler sayfasında aradığınız etiketi bulamazsanız tek yapmanız gereken, Etiketler sayfasının üst kısmındaki filtreyi kullanarak etiketin adıyla arama gerçekleştirmektir (Şekil 27) .

Git etiketlerini filtreleme
(Şekil 27) Git etiketlerini filtreleme

Git etiketlerinin güvenliği

Artık depo kullanıcılarına etiketleri yönetmek için ayrıntılı izinler verebilirsiniz. Bu arabirimden, kullanıcılara etiketleri silme ya da yönetme izni verebilirsiniz (Şekil 28) .

Git etiket güvenliği
(Şekil 28) Git etiketi güvenliği

İpucu

Git etiketleri hakkında daha fazla bilgi edinmek için bkz. Microsoft DevOps blogu.

Çekme isteklerini tamamlarken iş öğelerini otomatik olarak tamamlama

Çekme isteklerinize iş öğeleri bağlıyorsanız, her şeyin güncel kalmasını artık daha basitçe sağlayabilirsiniz. Artık, bir çekme isteğini tamamladığınızda, çekme isteği başarıyla birleştirildikten sonra bağlı iş öğelerinin de otomatik olarak tamamlanmasını sağlama seçeneğine sahip olacaksınız (Şekil 29) . İlkeleri kullanıyorsanız ve çekme isteklerini otomatik olarak tamamlanacak biçimde ayarlarsanız aynı seçeneği göreceksiniz. Artık çekme isteği tamamlandıktan sonra iş öğelerine dönerek durumu güncelleştirmeyi hatırlamak zorunda değilsiniz. Bu işlem sizin adınıza otomatik olarak gerçekleştirilir.

Bağlantılı iş öğelerini tamamlama
(Şekil 29) Bağlı iş öğelerini tamamlama

Gönderme/yeni yinelemede oyları sıfırlama

Çekme isteklerinde daha katı bir onay iş akışını tercih eden takımlar, yeni değişiklikler gönderildiğinde oyları sıfırlamayı tercih edebilir (Şekil 30) . Bu yeni ayar, Minimum gözden geçiren sayısı gerektir ilkesinin altında bir seçenektir.

Oyları sıfırla ayarı
(Şekil 30) Oyları sıfırlama ayarı

Bu seçenek ayarlanırsa, çekme isteği kaynak dalı her güncelleştirildiğinde tüm gözden geçirenlerin tüm oyları sıfırlanır. Bu seçenek, oylar her sıfırlandığında çekme isteğinin zaman çizelgesine bir girdi kaydetmesini sağlar (Şekil 31) .

Zaman çizelgesinde oyları sıfırlama
(Şekil 31) Zaman çizelgesindeki oyları sıfırlama

Çekme isteği ağacını dosya adına göre filtreleme

Bir çekme isteğinde belirli bir dosyayı bulmak artık hiç olmadığı kadar kolay. Dosyalar görünümündeki yeni filtre kutusu, kullanıcıların ağaç görünümünde dosya listesini filtrelemesine olanak tanır (Şekil 32) .

Çekme isteğinde dosya veya klasör bulma
(Şekil 32) Çekme isteğinde dosya veya klasör bulma

Filtre, çekme isteğindeki dosya yollarının herhangi bir kısmıyla eşleşir ve bu sayede dosya adlarına, kısmi yollara, dosya adlarına veya uzantılara göre arama yapabilirsiniz (Şekil 33) .

Sonuçları bulma
(Şekil 33) Sonuç bulma

Çekme isteği açıklamalarını filtrelemek için daha fazla seçenek

Çekme isteğine genel bakış ve dosyalar görünümlerindeki açıklamalar için artık aynı seçenekler sunuluyor (Şekil 34) . Yalnızca katıldığınız tartışmaları görecek biçimde de filtre uygulayabilirsiniz.

Çekme isteği açıklaması filtreleme
(Şekil 34) Çekme isteği açıklamalarını filtreleme

Çekme isteği ayrıntılarındaki kod açıklamaları için özgün farkı görüntüleme

Bir çekme isteğinin başvurduğu kodun değiştirildiği durumlarda (çoğunlukla istenen bir değişikliğin yapılması sonucunda gerçekleşir) çekme isteği açıklamasını anlamak zor olabilir (Şekil 35) .

Özgün farkı görüntüle
(Şekil 35) Özgün farkı görüntüleme

Böyle bir durumla karşılaştığınızda, güncelleştirme numarası içeren bir rozet göreceksiniz. Bu numaraya tıklayarak, açıklama oluşturulduğu sırada kodun nasıl göründüğüne bakabilirsiniz (Şekil 36) .

Güncelleştirme rozeti
(Şekil 36) Güncelleştirme göstergesi

Daraltılabilen çekme isteği açıklamaları

Kod gözden geçirme işlemi çekme isteği deneyiminin önemli bir parçası olduğundan, gözden geçirenlerin koda odaklanmasını kolaylaştıracak yeni özellikler ekledik. Kodu gözden geçirenler, yeni kodu ilk kez gözden geçirdikleri sırada açıklamaları kolayca gizleyebilir (Şekil 37) .

Açıklamaları gizle
(Şekil 37) Açıklamaları gizleme

Açıklamaların gizlenmesi durumunda (Şekil 38) , ağaç görünümünde açıklamalar gizlenir, dosya görünümünde ise açıklama dizileri daraltılır:

Daraltılmış açıklamalar
(Şekil 38) Daraltılmış açıklamalar

Daraltılan açıklamalar kenar boşluğundaki simgeye tıklanarak kolayca genişletilebilir ve bir kez daha tıklanarak yeniden daraltılabilir. Araç ipuçları(Şekil 39), yazışmanın tamamını görmeden açıklamaya göz atmayı kolaylaştırır.

Daraltılmış açıklama araç ipucu
(Şekil 39) Daraltılmış açıklama araç ipucu

Çekme isteği açıklamalarında görev listeleri

Bazen bir çekme isteği veya açıklama hazırladığınız sırada izlemek istediğiniz öğelerden oluşan kısa bir listeniz olur, ancak metni düzenlemek ya da birden çok açıklama eklemek zorunda kalırsınız. Basit görev listeleri, çekme isteği oluşturan veya gözden geçiren kişi olarak bir açıklamada ya da tek, birleştirilmiş bir açıklamada yapılacaklar listesinin ilerleme durumunu izlemenin harika bir yoludur. Bu özelliği kullanmaya başlamak veya biçimi seçilen metne uygulamak için Markdown araç çubuğuna tıklayın (Şekil 40) .

Görev listesi araç çubuğu
(Şekil 40) Görev listesi araç çubuğu

Görev listesi ekledikten sonra (Şekil 41) , kutuları işaretleyerek öğeleri tamamlandı olarak işaretleyebilirsiniz. Bunlar, açıklamada Markdown diliyle [ ] veya [x] olarak ifade edilir ve depolanır. Daha fazla bilgi edinmek için bkz. Markdown kılavuzu.

Görev listesi
(Şekil 41) Görev listesi

Çekme isteklerinde açıklamaları “Beğenme” özelliği

Beğen düğmesine tıklayarak bir çekme isteği açıklamasını desteklediğinizi gösterebilirsiniz (Şekil 42) . Düğmenin üzerine gelerek açıklamayı beğenen herkesin listesini görebilirsiniz.

Çekme isteği açıklamalarını beğenme
(Şekil 42) Çekme isteği açıklamalarını beğenme

Önerilerle onaylama sırasında geliştirilmiş iş akışı

Çekme isteklerinde otomatik tamamlama seçeneğini (Şekil 43) kullanmak, üretkenliğinizi artırmanın harika bir yoludur. Ancak kodu gözden geçirenler arasındaki etkin tartışmaların yarıda kesilmemesine dikkat edilmelidir. Bu tartışmaların daha sağlıklı yürütülebilmesi amacıyla, Önerilerle onayla oyu artık bir çekme isteğinin hangi durumlarda otomatik olarak tamamlanacak şekilde ayarlanacağını sorar. Kullanıcının sağladığı geri bildirimin okunabilmesi için otomatik tamamlamayı iptal etme ya da tüm ilkeler karşılandığında çekme isteğinin otomatik olarak tamamlanmasına izin verme seçeneği vardır.

Otomatik tamamlamayı iptal et iletişim kutusu
(Şekil 43) Otomatik tamamlama iletişim kutusunu iptal etme

Git bildirimleri için yol filtreleme desteği

Artık bir depodaki tüm klasörler için bildirim almak yerine, yalnızca takım üyeleri tarafından önem verdiğiniz klasörlerde çekme istekleri oluşturulduğunda ya da kod gönderildiğinde bildirim almayı tercih edebilirsiniz. Özel Git push veya Git pull isteklerine yönelik e-posta bildirimi abonelikleri oluştururken, bu bildirimleri klasör yoluna göre filtrelemeyi sağlayan yeni bir seçenek görürsünüz (Şekil 44) .

Bildirimler için yol filtreleme
(Şekil 44) Bildirimler için yol filtreleme

Çekme isteği iş akışları için e-posta şablonları güncelleştirildi

Çekme isteği e-posta uyarıları daha net, kısa ve eyleme dönüştürülebilir olacak şekilde yenilendi (Şekil 45) . Konu satırı, artık çekme isteğini başlığının yanı sıra depo adı gibi ikincil bilgilerle başlıyor ve kimlik en sona bırakılıyor. Çekme isteğini oluşturan kişiyi temel alarak kural ve filtre uygulamayı basitleştirmek için yazarın adı konuya eklendi.

Uyarı e-postalarının gövdesi, ilk olarak uyarının niye gönderildiğini özetleyen, sonra da kritik meta verileri (başlık, dal adları ve açıklama) sunan ve bir ana eylem çağrısı düğmesi içeren yenilenmiş bir şablona sahiptir. Gözden geçirenler, dosyalar ve işlemeler gibi ek ayrıntılar e-postanın daha alt kısmına eklenir.

Geliştirilmiş e-posta şablonu
(Şekil 45) Geliştirilmiş e-posta şablonu

Çoğu uyarının eylem çağrısı (Şekil 46) , çekme isteğini web’de görüntülemeye yöneliktir. Bununla birlikte, belirli bir açıklamayla ilgili bildirim aldığınızda kodu ve bağlam bilgisi sunan önceki konuşmayı kolayca bulabilmeniz için eylem çağrısı doğrudan bu açıklamanın bağlantısını verir.

Eylem çağrısı Email
(Şekil 46) E-posta eylem çağrısı

Anında iletme bildirimleri için güncelleştirilmiş e-posta şablonları

Anında iletme bildirimleri, net, kısa ve işlem yapılabilir olacak şekilde iyileştirilen yeni e-posta şablonlarına uygun olarak güncelleştirildi (Şekil 47) . Konu satırı, gönderme e-postalarını açıkça ayırt etmenize; dalı, depoyu ve yazarı belirlemenize; göndermeye dahil edilen işleme sayısını özetlemenize yardımcı olur. Bu değişiklikler ayrıca, bu e-posta bildirimlerini yönetmeye yardımcı olan kural ve filtreler oluşturmayı kolaylaştırır.

E-posta gövdesi, diğer e-postalarla tutarlıdır. E-postanın neden gönderildiğini, işlemi kimin başlattığını ve tam olarak ne olduğunu vurgular. Gönderme uyarılarına özgü olarak, alıcıları değişikliklerin kapsamı hakkında bilgilendirmeye yardımcı olmak için depo, dal, dosyalar ve işlemeler hakkında ayrıntılar dahil edilir. Gönderme uyarıları için ana eylem çağrısı Göndermeyi Görüntüle’dir. Uyarıyı oluşturan göndermeye ilişkin göndermeler görünümünü açar.

Gönderme şablonu
(Şekil 47) Gönderme şablonu

Wiki

Artık her proje kendi Wiki’sini destekliyor (Şekil 48) . Artık takım üyelerinizin projenizi anlamasına, kullanmasına ve projeye katkı sağlamasına yardımcı olan sayfaları rahatça yazabilirsiniz.

Wiki sayfası
(Şekil 48) Çekme İsteği Wiki sayfası

Yeni Wiki’nin temel özelliklerinden bazıları şunlardır:

  • Markdown söz dizimi ile basitleştirilmiş düzenleme deneyimi.
  • Yeni sayfa bir başlık belirtmenize ve içerik eklemenize olanak sağlar. (Şekil 49)
Başlık Wiki'si
(Şekil 49) Çekme İsteği Başlık Wiki’si
  • Markdown’da HTML etiketleri için destek (Şekil 50) .
Wiki HTML etiketleri
(Şekil 50) Çekme İsteği Wiki’si HTML etiketleri
  • Markdown klasöründeki görüntüleri rahatça yeniden boyutlandırın (Şekil 51) .
Görüntü yeniden boyutlandırma
(Şekil 51) Çekme İsteği Görüntüsünü yeniden boyutlandırma
  • Sayfaları yeniden sıralamanıza, yönetmenize ve sayfaların üst öğelerini yeniden ayarlamanıza imkan tanıyan güçlü sayfa yönetimi bölmesi.
  • Büyük Wiki’ler için sayfaları başlığa göre filtreleme özelliği (Şekil 52) .
Wiki menüsü
(Şekil 52) Çekme İsteği Wiki’si menüsü

İpucu

Wiki’yi kullanmaya başlama hakkında daha fazla bilgi edinin.

Wiki’yi daha çok kullandıkça, yanlışlıkla yapılan değişiklikleri kaydetme şansınız artacak. Artık, bir düzeltmenin ayrıntılarına gidip Geri Döndür düğmesine tıklayarak bir Wiki sayfasındaki düzeltmeyi geri alabilirsiniz (Şekil 53) .

Wiki geri döndür düğmesi
(Şekil 53) Çekme İsteği Wiki’si geri döndürme düğmesi

Wiki oluşturulurken çoğu zaman bir Wiki sayfasındaki içindekiler tablosunda, mevcut olmayan bağlantıların yer aldığını gözlemledik (Şekil 54) . Kullanıcılar gerçek bir sayfa oluşturmak amacıyla bu bağlantılara tıklıyordu. Bundan önce böyle bir senaryoda bağlantının bozuk olduğunu veya sayfanın mevcut olmadığını belirten bir uyarı yapılıyordu. Artık böyle durumlar genel bir Wiki senaryosu olarak ele alınarak sayfa oluşturmanıza olanak sağlanıyor.

Wiki sayfası oluşturma
(Şekil 54) Çekme İsteği Wiki sayfası oluşturma

Wiki sayfası için ayrıntılı bağlantı sağlama

Wiki artık, bir sayfa içinde ve sayfalar arasında ayrıntılı bağlantı sağlama bölümlerini destekliyor. Bu, içindekiler tablosu oluşturmak için çok kullanışlıdır. Aşağıdaki söz dizimini kullanarak aynı sayfadaki veya başka bir sayfadaki bir başlığa başvurabilirsiniz:

  • Aynı sayfa: [text to display](#section-name)
  • Başka bir sayfa: [text to display](/page-name#section-name)

Market’teki Wiki uzantısı kullanım dışı bırakıldı. Mevcut bir Wiki uzantısı kullanıcısıysanız bu geçiş aracını kullanarak Wiki sayfalarınızı yeni Wiki’ye geçirebilirsiniz. Mevcut Wiki sayfalarınızı yeni Wiki’ye geçirme hakkında daha fazla bilgi edinin.

Paket Yönetimi

Paket Yönetimi deneyimindeki güncelleştirmeler

Paket URL’leri artık GUID’leri kullanmak yerine paket adı ve sürümüyle çalışıyor. Bu, paket URL’lerini el ile oluşturmayı kolaylaştırıyor (Şekil 55) . Biçim şu şekildedir: \<tfsserverurl\>/\<project|team\>/_packaging?feed=\<feed\>&package=\<package\>&version=\<version\>&protocolType=\<NuGet|Npm|Maven\>&_a=package.

Paket URL'si
(Şekil 55) Çekme İsteği Paketi URL’si

Artık silinen paket sürümlerini tüm akış kullanıcılarından gizleyebilirsiniz (artık üzeri çizili paketler görmeyeceksiniz!) (Şekil 56) .

Silinen paketleri gizleme
(Şekil 56) Silinen paketleri gizleme

Paket ayrıntıları sayfasında gerçekleştirebildiğiniz tüm işlemler artık paket listesindeki bağlam menüsünden gerçekleştirilebilir.

Paket listesi, son güncelleştirilen paketleri kolayca bulabilmeniz için anlaşılır tarihler içeren yeni bir Son gönderme sütunu içeriyor (Şekil 57) .

Son gönderilen sütun
(Şekil 57) Son gönderilen sütun

Maven paketleri

TFS 2018’de Maven yapıtlarını barındırma desteği sunmaya başladık (Şekil 58) . Maven yapıtları, Java geliştiricilerinin kod ve bileşenleri sorunsuz bir şekilde paylaşmasına imkan tanır. Paket Yönetimi’ni kullanarak nasıl Maven yapıtları paylaşabileceğinizi öğrenmek için başlangıç kılavuzumuzu inceleyin.

Maven paketleri
(Şekil 58) Maven paketleri

Yeni birleşik NuGet görevi

NuGet Restore, NuGet Packager ve NuGet Publisher görevlerini derleme görevi kitaplığının geri kalanıyla daha iyi hizalamak için tek bir NuGet derleme görevi altında birleştirdik; yeni görev varsayılan olarak NuGet 4.0.0 sürümünü kullanır. Bu doğrultuda, eski görevleri kullanım dışı bıraktık ve zamanınız olduğunda yeni NuGet görevine geçmenizi öneriyoruz. Bu değişiklik, aşağıda ana hatlarıyla verilen ve yalnızca birleşik görevi kullanarak erişebileceğiniz bir dizi geliştirme ile eş zamanlı olarak sunuluyor.

Bu çalışma kapsamında, PATH üzerindeki NuGet’in sürümünü denetleyen ve yeni NuGet görevi tarafından kullanılan yeni bir NuGet Tool Installer da yayınladık. Bu nedenle, NuGet’in daha yeni bir sürümünü kullanmak için tek yapmanız gereken, derlemenizin başlangıcında bir NuGet Tool Installer görevi eklemektir (Şekil 59) .

Nuget görevi
(Şekil 59) NuGet görevi

İpucu

Microsoft DevOps blogunda, derlemenizde en son NuGet’i kullanma hakkında daha fazla bilgi edinin.

NuGet “Yinelenenlerin atlanmasına izin ver” seçeneği

Birçok NuGet müşterisinden bir paket kümesi oluşturduklarını, ancak bunlardan yalnızca bazılarının güncelleştirmesinin (dolayısıyla da güncelleştirilmiş sürüm numaralarının) olduğunu duyduk. NuGet derleme görevi, sürümün zaten kullanımda olduğu bir VSTS/TFS akışına paket göndermeye çalıştığında görevin devam etmesine imkan tanıyan yeni bir Yinelenenlerin atlanmasına izin ver seçeneği içeriyor.

npm derleme görevi güncelleştirmeleri

Yeni NPM derleme görevi, npm projenizi Windows, Linux veya Mac’te derlemenizden bağımsız olarak sorunsuz bir biçimde çalışır. Ayrıca, görevi yeniden düzenleyerek hem npm install hem de npm publish görevini kolaylaştırdık. Projenizin .npmrc dosyasında listelenen kayıt defterlerine ait kimlik bilgilerinin bir hizmet uç noktasında güvenli bir şekilde saklanması için install ve publish kimlik bilgilerini almayı basitleştirdik. Alternatif olarak, VSTS/TFS akışı kullanıyorsanız bir akışı seçmenize imkan tanıyan seçicimizi kullandığınızda derleme aracısı tarafından kullanılan gerekli kimlik bilgilerini içeren bir .npmrc oluşturulur.

Maven artık kimliği doğrulanmış akışları destekliyor

Maven derleme görevi, npm ve NuGet’in aksine kimliği doğrulanmış akışlarla çalışmıyordu. Maven görevini, VSTS/TFS akışlarıyla kolayca çalışabilmenizi sağlayacak biçimde güncelleştirdik (Şekil 60) .

dotnet görevi
(Şekil 60) dotnet görevi

dotnet görevi, kimliği doğrulanmış akışları ve web projelerini destekliyor

dotnet görevinin yeni ana sürümü (2.x), geri bildirim isteklerinizin çoğunu karşılıyor ve bir süredir izlemekte olduğumuz bir dizi hatayı düzeltiyor. Bu, aşağıdakileri içerir:

  1. İlk olarak, dotnet artık Paket Yönetimi gibi kimliği doğrulanmış paket kaynaklarını desteklediğinden, özel paket kaynaklarından paketleri geri yüklemek için NuGet görevini kullanmanız gerekmez.
  2. Görevin 2.0 sürümünde Projelerin yolu alanının davranışı değişti. Görevin önceki sürümlerinde, belirtilen desenle eşleşen proje dosyaları bulunamadığında görev günlüğe bir uyarı kaydedip başarılı oluyordu. Böyle senaryolarda, derleme başarılı olduğu halde bağımlılıkların neden geri yüklenmediğini anlamak zor olabilir. Artık belirtilen desenle eşleşen proje dosyaları bulunamazsa görev başarısız olur. Bu, diğer görevlerin davranışıyla uyumlu olmasının yanı sıra anlaşılması ve kullanılması kolay bir özelliktir.
  3. Önceki görev yayımlama komutu sürümlerinde, açık bir çıkış yolu belirtmiş olsanız bile görev tüm dosyaları proje dosya adına göre adlandırılmış bir klasöre yerleştirerek çıkış yolunu değiştiriyordu. Bu, komutları zincir halinde birbirine eklemeyi zorlaştırır. Artık çıkış dosyasının yolunu denetleyebilirsiniz.

Ayrıca, PATH üzerindeki dotnet’in sürümünü denetleyen ve yeni dotnet görevi tarafından kullanılan yeni bir dotnet Tool Installer görevi de yayınladık. Bu nedenle, dotnet’in daha yeni bir sürümünü kullanmak için tek yapmanız gereken, derlemenizin başlangıcına bir dotnet Tool Installer görevi eklemektir.

Hesabınız/koleksiyonunuz dışında çalışma

Başka bir VSTS hesabı veya TFS sunucusundaki Paket Yönetimi akışları ya da NuGet.org/npmjs.com, Artifactory veya MyGet (Şekil 60) gibi Paket Yönetimi dışı akışlar olmasından bağımsız olarak, TFS sunucunuz ya da VSTS hesabınız dışındaki akışlarla artık daha kolayca çalışabilirsiniz (Şekil 61) . NuGet ve npm için adanmış Hizmet Uç Noktası, doğru kimlik bilgilerinin girilmesini kolaylaştırmasının yanı sıra derleme görevlerinin tüm paket indirme ve paket gönderme işlemlerinde sorunsuz bir şekilde çalışmasını sağlar.

Kullanılacak akışlar
(Şekil 61) Kullanılacak akış

VSTS/TFS akışları için akış seçici

Kaynak deponuzda paketlerinizin nereden geldiğine ilişkin bir kayıt olabilmesi için her zaman bir yapılandırma dosyasının (örn. NuGet.Config, .npmrc, vs.) iade edilmesini öneririz. Bununla birlikte, bu yöntemin uygun olmadığı bazı senaryolar olduğunu duyduk. Bu nedenle, bir akışı seçmenize ve ilgili derleme adımı için kullanılan bir yapılandırma dosyasını otomatik olarak oluşturmanıza imkan tanıyan yeni bir Bu VSTS/TFS akışındaki paketleri kullan seçeneği ekledik (Şekil 62) .

Akış seçici
(Şekil 62) Akış seçici

Derleme ve Yayın

XAML Derlemeleri

TFS 2015’te web tabanlı, platformlar arası bir derleme sistemini kullanıma sunduk. XAML derlemeleri TFS 2018 RTW veya Güncelleştirme 1’de desteklenmez, ancak TFS 2018 Güncelleştirme 2’de bunları yeniden etkinleştirdik. XAML derlemelerinizi geçirmeniz önerilir. Geçiş yapmaya hazır değilseniz ve XAML derlemelerini kullanmaya devam etmeniz gerekiyorsa lütfen TFS 2018 Güncelleştirme 2’ye yükseltin.

TFS 2018 RTW veya Güncelleştirme 1’e yükselttiğinizde:

  • Takım projesi koleksiyonunuzda XAML derlemesi verileri varsa, XAML derlemesi özelliklerinin kaldırıldığına ilişkin bir uyarı alacaksınız.

  • Tamamlanmış XAML derlemelerini görebilirsiniz ancak yeni derlemeleri kuyruğa alamazsınız.

  • TFS 2018’de XAML derleme denetleyicisi veya aracısının yeni sürümü yoktur.

TFS 2018 Güncelleştirme 2’ye yükselttiğinizde:

  • Takım projesi koleksiyonunuzda XAML derlemesi verileri varsa, XAML derlemesi özelliklerinin kullanım dışı bırakıldığına ilişkin bir uyarı alırsınız.

  • XAML derleme tanımlarını düzenlemek veya yeni XAML derlemelerini kuyruğa almak için Visual Studio veya Takım Gezgini 2017’yi kullanmanız gerekir.

  • Yeni XAML derleme aracıları oluşturmanız gerekiyorsa bunları TFS 2015 derleme aracısı yükleyicisini kullanarak yüklemeniz gerekir.

İpucu

XAML derlemelerini kullanım dışı bırakma planımızın açıklaması için Gelişen TFS/Team Services derleme otomasyon özellikleri blog gönderisine bakın.

Derleme tanımlarını dışarı ve içeri aktarma

Derleme tanımları dahili olarak .json dosyaları halinde uygulandığından, dosyanın geçmişindeki değişikliklerin ayrıntılarını görebilirsiniz. Zaten derleme tanımlarınızı kopyalayabiliyor veya bunlardan şablon oluşturabiliyordunuz, ancak birçok kullanıcı CI derleme mantığının bir kopyasını alıp başka bir takım projesinde yeniden kullanmak istiyordu. Bu, UserVoice’ta en çok istenen on özellikten biriydi.

Bunun artık mümkün olduğunu memnuniyetle duyuruyoruz! (Şekil 63) ve (Şekil 64) .

Derleme tanımını dışarı aktarma
(Şekil 63) Derleme tanımını dışarı aktarma
Derleme tanımını içeri aktarma
(Şekil 64) Derleme tanımını içeri aktarma

Derleme şablonları içeren uzantılar

Derleme şablonları, kullanıcıların derlemelerini tanımlama işlemine başlarken kullanabileceği bir temel oluşturmanıza imkan tanır. Yeni sunduğumuz pakette bunlardan birkaç tane var ve hesabınıza yeni şablonlar yükleyebiliyor olsanız da uzantı yazarının bir uzantı kapsamında yeni şablonlar eklemesi hiçbir zaman mümkün olmamıştı. Artık uzantılarınıza derleme şablonları ekleyebilirsiniz. Örneğin:

{  "id": "Template1", 
   "type": "ms.vss-build.template", 
   "targets": [ "ms.vss-build.templates" ], 
   "properties": { "name": "Template1" } }

Tam örnek için bkz: https://github.com/Microsoft/vsts-extension-samples/tree/master/fabrikam-build-extension.

İpucu

Bu özelliği kullanarak tüm takım projelerinizde aynı özel şablonu sunabilir ve paylaşabilirsiniz.

Uzantıdaki bir görevi kullanım dışı bırakma

Artık uzantınızdaki bir görevi kullanım dışı bırakabilirsiniz. Bu özelliğin çalışması için görevinizin en son sürümüne şu değişkeni eklemeniz gerekir:

"deprecated": true

Kullanım dışı bırakılan görevler kullanıcı tarafından arandığında (Şekil 65) , uca bu görevler gönderilir ve daraltılabilir bir bölüm (varsayılan olarak daraltılmıştır) altında gruplanır. Bir tanımda zaten kullanım dışı bir görev kullanılıyorsa, kullanıcıların yeni göreve geçmesini teşvik etmek için kullanım dışı görev rozeti görüntülenir.

Kullanım dışı görev rozeti
(Şekil 65) Kullanım dışı görev göstergesi

Görev açıklamasında yeni görevden bahsederek kullanıcılarınızın bunun hakkında bilgi edinmesine yardımcı olabilirsiniz (Şekil 66) . Bu açıklama, görevi hem görev kataloğundan hem de mevcut derleme/yayın tanımlarından doğru şekilde kullanma konusunda kullanıcılara kılavuzluk sağlar.

Kullanım dışı görev açıklaması
(Şekil 66) Kullanım dışı görev açıklaması

Katkıda bulunulan derleme bölümlerinin bölüm görünürlüğünü denetlemesine izin verme

Bundan önce derleme görevleri ve derleme özeti bölümlerine sahip bir uzantıyı kullanırken, bu derlemedeki derleme görevini kullanmıyor olsanız bile derleme özeti bölümünü görüyordunuz. Artık uzantı kodunuza şu satırı ekleyip satırın değerini true veya false şeklinde ayarlayarak derleme özeti sayfasında bu bölümü gizlemeyi veya göstermeyi tercih edebilirsiniz:

VSS.getConfiguration().setSectionVisibility("$(publisherId).$(extensionId).$(sectionId)", false);

Microsoft vsts-extension-samples deposuna eklenen örneği görüntüleyin.

Değişken grubu desteği

Daha önce yayın tanımlarında kullanılabilen değişken grupları, artık derleme tanımlarında da kullanıma hazırdır. Değişken grubu oluşturma hakkında daha fazla bilgi edinin. Bu özellik, proje düzeyinde derleme/yayın değişkenleri ve derleme tanımlarındaki değişken grupları için yapılan ilgili öneriler temel alınarak geliştirilmiş ve önceliklendirilmiştir.

Apple sertifikaları gibi güvenli dosyalarla çalışma

Genel amaçlı güvenli dosyalar kitaplığı ekledik (Şekil 67).

Güvenli dosyalar kitaplığı
(Şekil 67) Güvenli dosyalar kitaplığı

İmzalama sertifikaları, Apple Sağlama Profilleri, Android Keystore dosyaları ve SSH anahtarları gibi dosyaları, kaynak deponuza işlemeye gerek kalmadan sunucuda depolamak için güvenli dosyalar kitaplığını kullanın.

Güvenli dosyaların içeriği şifrelenir ve yalnızca derleme veya yayın işlemleri sırasında bir görevden başvurularak kullanılabilir. Güvenli dosyalar, güvenlik ayarlarına bağlı olarak takım projesindeki birden çok derleme ve yayın tanımında kullanılabilir. Güvenli dosyalar Kitaplık güvenliği modelini izler.

Bu yeni özellikten yararlanan bazı Apple görevleri de ekledik:

Derleme tanımlarını duraklatma

Artık, derleme tanımlarını duraklatabilir veya devre dışı bırakabilirsiniz. Derleme tanımınızda değişiklikler yapmayı planlıyor ve bunlar tamamlanana kadar yeni derlemelerin kuyruğa alınmasını engellemek istiyorsanız, derleme tanımını devre dışı bırakabilirsiniz. Benzer şekilde, aracı makinelerini yükseltmeyi planlıyorsanız, bir derleme tanımını duraklatmayı seçebilirsiniz. Bu, VSTS’nin yeni derleme isteklerini kabul edebilmesine ve siz tanımı sürdürene kadar bunları çalıştırmadan kuyrukta bekletmesine olanak sağlar.

Görev girişi doğrulama desteği

Derleme tanımı görevlerinde parametreleri yazarken bazen hatalar oluşabilir. Görev girişi doğrulaması sayesinde görev yazarları, uygun değerlerin belirtildiğinden emin olabilir. Doğrulama ifadeleri, görev koşulları için kullanılan benzer ifade söz dizimlerini izler ve görev koşulları tarafından desteklenen işlevlerin yanı sıra URL, IPv4, e-posta, numara aralığı, sha1, uzunluk veya eşleşme gibi desteklenen işlevleri kullanabilir.

İpucu

VSTS görevleri deposu sayfasında hedefler ve kullanım hakkında daha fazla bilgi edinebilirsiniz.

Yeni Yayın Tanımı Düzenleyicisi

Derleme ve Yayın deneyimlerini yenileme yolculuğumuzda, yayın tanımı düzenleyicimizi yeniden tasarlayarak daha kullanışlı bir deneyime dönüştürdük, bazı sorunlu noktaları düzelttik ve yeni özellikler ekledik. Yeni düzenleyicinin en güçlü özelliklerinden biri, ortamınıza yönelik dağıtımların nasıl ilerleyeceğini görselleştirmenize yardımcı olmasıdır. Buna ek olarak onaylar, ortam özellikleri ve dağıtım ayarları artık bağlam içindedir ve kolayca yapılandırılabilir.

İşlem hattının görselleştirilmesi

Düzenleyicideki işlem hattı (Şekil 68) , bir yayındaki dağıtımların nasıl ilerlediğine yönelik bir grafik görünümü sağlar. Yapıtlar yayın tarafından tüketilir ve ortamlara dağıtılır. Ortamların düzeni ve bağlantıları, her ortam için tanımlanan tetikleyici ayarlarını yansıtır.

Boru hattı
(Şekil 68) Yayın işlem hattı
Bağlam içi yapılandırma kullanıcı arabirimi

Yapıtlar, yayın tetikleyicileri, dağıtım öncesi ve dağıtım sonrası onaylar, ortam özellikleri ve dağıtım ayarları artık bağlam içinde ve kolayca yapılandırılabilir (Şekil 69) .

Sürüm yapılandırması
(Şekil 69) Yayın yapılandırması
Dağıtım şablonlarını kullanmaya başlama

Tüm yerleşik dağıtım şablonları, işlem parametreleriyle donatıldı. Bu parametreler, kullanıcıların görevlerde ayrıntıya inmelerine gerek kalmadan en önemli parametreleri belirterek kullanmaya başlamalarına olanak tanıyor (Şekil 70) .

Dağıtım şablonları
(Şekil 70) Dağıtım şablonları
Yayın ve ortam değişkenleri için basitleştirilmiş yönetim

Yayın veya ortam değişkenlerini hızlı bir şekilde eklemek için Liste görünümünü, kapsamlar arasında değişkenleri yan yana karşılaştırmak ve düzenlemek için Kılavuz görünümünü kullanın (Şekil 71) . Ayrıca, her iki görünümde de çalıştığınız değişkenler kümesini yönetmek için filtre ve anahtar sözcük aramayı kullanabilirsiniz.

Değişkenlerin basitleştirilmiş yönetimi
(Şekil 71) Değişkenlerin basitleştirilmiş yönetimi
Geliştirilmiş görev ve aşama düzenleyicisi

Yeni derleme tanımı düzenleyicisindeki tüm iyileştirmeler artık yayın tanımı düzenleyicisinde de kullanılabilir (Şekil 72) . Belirli görevleri arayabilir ve Ekle düğmesini ya da sürükle/bırak özelliğini kullanarak ekleyebilirsiniz. Sürükle/bırak özelliğini kullanarak görevleri yeniden sıralayabilir veya kopyalayabilirsiniz.

Görev düzenleyicisi
(Şekil 72) Görev düzenleyicisi
Değişken grupları, Bekletme ve Seçenekler sekmeleri

Artık Seçenekler sekmesinden çeşitli gruplara bağlanabilir/bağlantıyı kesebilir (Şekil 73) , tek tek ortamlar için bekletme ilkesi ayarlayabilir ve yayın numarası biçimi gibi yayın tanımı düzeyindeki ayarları değiştirebilirsiniz. Ayrıca, Görevler sekmesinin içinden bir ortamı dağıtım şablonu olarak kaydedebilir, ortam düzeyi izinler ayarlayabilir ve aşamaları yeniden sıralayabilirsiniz.

Değişken grupları
(Şekil 73) Değişken grupları

Ortam düzeyindeki işlemlerle şablon olarak kaydedin ve güvenliği ayarlayın (Şekil 74) .

Ortam menüsü
(Şekil 74) Ortam menüsü

Dağıtım Grupları Kullanılarak Sanal Makine Dağıtımı

Release Management artık sağlam ve kullanıma hazır çok makineli dağıtımı destekliyor. Artık birden çok makinedeki dağıtımları düzenleyebilir ve uygulamanın tamamen yüksek oranda kullanılabilir olmasını sağlarken sıralı güncelleştirme işlemleri gerçekleştirebilirsiniz.

Aracı tabanlı dağıtım özelliği, aynı derleme ve dağıtım aracılarına bağımlıdır. Bununla birlikte, derleme ve dağıtım aracılarını bir aracı havuzundaki proxy sunucuları kümesine yükleyip dağıtımları uzak hedef sunuculara göndermenizi gerektiren geçerli yaklaşımın aksine, aracıyı doğrudan hedef sunucularınızın her birine yüklersiniz ve bu sunuculara sıralı dağıtım yaparsınız. Hedef makinelerinizde tam görev kataloğunu kullanabilirsiniz.

Dağıtım grubu (Şekil 75) , her birine aracılar yüklenmiş hedeflerden (makineler) oluşan mantıksal bir gruptur. Dağıtım grupları; tek kutu Geliştirme, çok makineli QA ve UAT/Prod için bir makine grubu gibi fiziksel ortamlarınızı temsil eder. Bunlar, fiziksel ortamlarınızın güvenlik bağlamını da belirtir.

Dağıtım grupları
(Şekil 75) Dağıtım grupları

Bunu aracımızı kaydettiğiniz herhangi bir sanal makineye karşı kullanabilirsiniz. Ayrıca, sanal makine çalıştığında aracıyı otomatik olarak yükleyen bir Azure sanal makine uzantısı için destek sunarak Azure’a kaydetmeyi çok kolay hale getirdik. Azure sanal makinesi kaydedildiğinde sanal makinede bulunan etiketler otomatik olarak devralınır.

Dağıtım grubunuz oluşturulduğunda tek yapmanız gereken bu dağıtım grubunda ne yürütülmesini istediğinizi yapılandırmaktır (Şekil 76) . Etiketleri kullanarak hangi makinelerde nelerin çalıştırılacağını ve dağıtımın ne kadar hızlı ya da yavaş gerçekleşeceğini denetleyebilirsiniz.

Dağıtım gruplarını yapılandırma
(Şekil 76) Dağıtım gruplarını yapılandırma

Dağıtım çalıştırıldığında, hedeflediğiniz makine grubunun tamamındaki ilerleme durumu günlüklerde gösterilir (Şekil 77) .

Dağıtım grubu ilerleme durumu
(Şekil 77) Dağıtım grubu ilerleme durumu

Bu özellik artık Release Management’ın tümleşik bir parçasıdır. Ek lisans gerekmez.

Gelişmiş Dağıtım Grupları Kullanıcı Arabirimi

Derleme ve Yayın deneyimlerini yenileme yolculuğumuzda, dağıtım grupları sayfalarımızı daha anlaşılır ve kullanışlı bir deneyim sunmak üzere yeniden tasarladık (Şekil 78) . Giriş sayfasından dağıtım grubundaki hedeflerin sistem durumunu görüntüleyebilirsiniz. Ayrıca tek tek dağıtım grupları için güvenliği yönetebilir veya dağıtım grupları arasında varsayılan izinler ayarlayabilirsiniz.

Dağıtım grupları kullanıcı arabirimi
(Şekil 78) Dağıtım grupları kullanıcı arabirimi

Bir dağıtım grubu içindeki hedef için özeti, son dağıtımları ve hedefin özelliklerini görüntüleyebilirsiniz (Şekil 79) . Hedef üzerinde etiketler ayarlayabilir ve her hedef üzerinde nelerin çalıştırılacağını denetleyebilirsiniz. Gelecek sürümlerde dağıtım grupları için filtre desteği eklenecektir.

Dağıtım grupları kullanıcı arabirimi etiketleri
(Şekil 79) Dağıtım grupları kullanıcı arabirimi etiketleri

Görev grubu başvuruları

Görev grupları, derleme veya yayın tanımlarınıza ekleyebileceğiniz bir görev kümesi tanımlamanıza imkan tanır (Şekil 80) . Bu özellik, birden çok derleme veya yayında aynı görev grubunu kullanmanız gerektiğinde kullanışlıdır. Artık, görev grubunuza başvuran derleme tanımları, yayın tanımları ve görev gruplarına ilişkin bir görünümden yararlanabilirsiniz. Bu, Bir görev grubunun tüketicilerini izlemenize yardımcı olur. (Şekil 79) .

Görev grubu başvuruları
(Şekil 80) Görev grubu başvuruları

Başvurulmakta olan bir görev grubunu silmeye çalıştığınızda bir uyarı alırsınız ve bu sayfanın bağlantısı verilir.

Görev grubu sürümü oluşturma

Bir görev grubunda yapılan değişiklikler görev grubunu kullanan tüm tanımlarda geçerli olduğundan, bu işlemi riskli bulabilirsiniz. Görev grubu sürümü oluşturma sayesinde, artık geçiş yapmaya hazır olana kadar en önemli tanımlarınıza kararlı sürümler sunmaya devam ederken görev grubu sürüm taslakları oluşturabilir ve bunların önizlemesini yapabilirsiniz. Biraz taslak çalışması ve yinelemeden sonra kararlı bir sürüm yayımlayabilir ve değişikliklerin kesintiye uğratıcı bir yapısı olması durumunda, görev grubunu önizleme (yeni ana sürüm) olarak yayımlamayı tercih edebilirsiniz. Alternatif olarak, bunu doğrudan güncelleştirilmiş ve kararlı bir sürüm olarak yayımlayabilirsiniz (Şekil 81) .

Görev grubunun yeni bir ana sürümü (veya önizlemesi) çıktığında, tanım düzenleycisi tarafından yeni bir sürüm olduğu bildirilir. Bu ana sürüm önizlemeyse, bir “deneyin” iletisi bile görürsünüz. Görev grubu önizlemeden çıktığında, bunu kullanan tanımlar bu ana kanalla paralel şekilde otomatik olarak güncelleştirilir (Şekil 82) .

Taslak olarak kaydet
(Şekil 81) Görev grubunu taslak olarak kaydetme
Görev grubunu önizleme olarak yayımlama
(Şekil 82) Görev grubunu önizleme olarak yayımlama

Görev grubu içeri ve dışarı aktarma

Görev grupları bir proje içinde yeniden kullanılabilirlik imkanı sunsa da farklı proje ve hesaplarda aynı görev grubunu yeniden oluşturmanın zor olabileceğini biliyoruz. Görev grubunu içeri/dışarı aktarma özelliğiyle (Şekil 83) , yayın tanımları için uyguladığımız güncelleştirmede olduğu gibi, görev grubunu JSON dosyası olarak dışarı aktarıp daha sonra istediğiniz yere aktarabilirsiniz. Dışarı aktarıldığında ilk olarak genişleyen iç içe görev grupları özelliği de etkinleştirildi.

Görev grubunu dışarı aktarma
(Şekil 83) Görev grubunu dışarı aktarma

Sunucu Tarafı (Aracısız) görevlerde Çoklu Yapılandırma

Artık, sunucu tarafı (aracısız) görevler için çeşitli çarpanlar belirterek (Şekil 84) bir aşamadaki görev kümesinin aynısını, paralel şekilde çalışan birden çok yapılandırmada çalıştırabilirsiniz.

Aracısız görevlerin çoklu yapılandırması
(Şekil 84) Aracısız görevlerin çoklu yapılandırması

El ile Müdahale görevinde Değişken Desteği

El ile Müdahale görevi (Şekil 85) artık, görev çalıştırıldığında kullanıcılara gösterilen yönerge metninde değişkenlerin kullanılmasını destekliyor. Kullanıcılar bu noktada yayın işlemini sürdürebilir ya da işlemi reddedebilir. Yayında tanımlanan ve mevcut olan tüm değişkenler dahil edilebilir ve değerler hem bildirimlerde hem de kullanıcılara gönderilen e-posta iletilerinde kullanılır (Şekil 86) .

El ile müdahale görevi
(Şekil 85) El ile müdahale görevi
El ile başlatma beklemede iletişim kutusu
(Şekil 86) El ile müdahale beklemede iletişim kutusu

Bir ortama yönelik yayınları kaynak dala göre denetleme

Yeni bir yayın oluşturulduğunda (genellikle bir kaynağın derlenmesi başarılı olduğunda) otomatik olarak dağıtım tetiklemek için bir yayın tanımı yapılandırılabilir. Ancak, kaynaktaki tüm derlemelerin değil de yalnızca belirli dallarındaki derlemelerin başarılı olması durumunda dağıtmak isteyebilirsiniz.

Örneğin, Geliştirme ve Test ortamlarına tüm derlemelerin dağıtılmasını isterken Üretim ortamına yalnızca belirli derlemelerin dağıtılmasını isteyebilirsiniz. Daha önce, bunu yapabilmek için biri Geliştirme ve Test ortamları için, diğeri Üretim ortamı için olmak üzere iki yayın işlem hattına sahip olmanız gerekiyordu.

Release Management artık her ortam için yapıt filtrelerinin kullanımını destekler. Bu, dağıtım tetikleme koşulları karşılandığında (bir derlemenin başarılı olması veya yeni yayın oluşturulması gibi) her ortama dağıtılan yayınları belirtebileceğiniz anlamına gelir. Ortamın Dağıtım koşulları iletişim kutusundaki Tetikleyici bölümünde (Şekil 87) , bu ortama yönelik yeni bir dağıtımı tetikleyecek derlemeler için kaynak dal ve etiketler gibi yapıt koşullarını seçin.

Dağıtım koşulları iletişim kutusu
(Şekil 87) Dağıtım koşulları iletişim kutusu

Ayrıca, Yayın Özeti sayfası (Şekil 88) artık “başlatılmadı” durumundaki tüm dağıtımların bu durumda olmasının nedenini gösteren ve dağıtımın nasıl veya ne zaman başlatılabileceğini öneren bir açılır ipucu içeriyor.

Sürüm özeti ipucu
(Şekil 88) Yayın özeti ipucu

Bir yapıt kaynağı olarak Git depoları için Yayın Tetikleyicileri

Release Management artık, aynı hesaptaki takım projelerinden birinde bulunan bir yayın tanımına bağlı Git depoları için sürekli dağıtım tetikleyicisi yapılandırmayı destekliyor (Şekil 89) . Bu, depoya yeni bir işleme yaptığınızda otomatik olarak yayın tetiklemenize imkan sağlar. Git deposunda hangi işlemelerin yayın tetikleyeceğine ilişkin bir dal da belirtebilirsiniz.

Yayın tetikleyicileri
(Şekil 89) Yayın tetikleyicileri

Yayın Tetikleyicileri: Git deposuna gönderilen değişiklikler için sürekli dağıtım

Release Management’ta bir derleme tamamlandığında sürekli dağıtım yapılandırma özelliği zaten hep vardı. Ancak, artık Git Push üzerinde de sürekli dağıtım yapılandırabilirsiniz. Bu, GitHub ve Team Foundation Git depolarını bir yayın tanımına yapıt kaynakları olarak bağlayabileceğiniz ve daha sonra, bir derlemeden oluşturulmayan Node.JS ve PHP uygulamaları gibi uygulamalar için otomatik olarak yayın tetikleyebileceğiniz anlamına gelir. Bu durumda, sürekli dağıtım için derleme eylemine gerek kalmaz.

Ortam tetikleyicileri içinde dal filtreleri

Yeni yayın tanımı düzenleyicisinde, belirli bir ortam için yapıt koşullarını belirtebilirsiniz. Bu yapıt koşullarını kullanarak, hangi yapıtların belirli bir ortama dağıtılacağı üzerinde daha ayrıntılı denetime sahip olursunuz. Örneğin, bir üretim ortamı için yalnızca ana daldan üretilen derlemelerin dağıtılmasını sağlamak isteyebilirsiniz. Bu filtrenin, bu ölçütü karşılaması gerektiğini düşündüğünüz tüm yapıtlar için ayarlanması gerekir.

Ayrıca yayın tanımına bağlı her bir yapıt için birden çok filtre ekleyebilirsiniz (Şekil 90) . Bu ortamda dağıtım, yalnızca tüm yapıt koşulları başarıyla karşılandıysa tetiklenir.

Dal filtreleri
(Şekil 90) Dal filtreleri

Sunucu tarafı görevlerde yapılan iyileştirmeler

Sunucu tarafı görevlerde (bir sunucu aşaması içinde çalışan görevler) iki iyileştirme yapıldı.

Otomatikleştirilmiş işlem hattı kapsamında tüm genel HTTP REST API’leri (Şekil 91) çağıran yeni bir görev eklendi. Örneğin, bir Azure işleviyle belirli bir işlemeyi çağırmak ve tamamlanmasını beklemek için kullanılabilir.

REST API görevi
(Şekil 91) REST API görevi

Ayrıca tüm sunucu tarafı görevlere bir Denetim seçenekleri(Şekil 92) bölümü ekledik. Görev davranışı artık Etkin, Hatada devam et, Her zaman çalıştır ve Zaman aşımı seçeneklerini ayarlamayı da içerir.

Görev denetimi seçenekleri
(Şekil 92) Görev denetim seçenekleri

Kod merkezinde yayın durumu rozeti

Bugün bir işlemenin müşteriye ait üretim ortamına dağıtılıp dağıtılmadığını anlamak istediğinizde önce derlemeyi hangi işlemenin tükettiğini belirler, sonra da bu derlemenin dağıtıldığı tüm yayın ortamlarını denetlersiniz. Artık Kod merkezindeki durum rozetiyle tümleşik olan dağıtım durumunda kodunuzun dağıtıldığı ortamların listesi gösterildiğinden, bu deneyim çok daha kolaydır. Her dağıtım için dağıtım kapsamındaki en son işlemeye durum bilgisi gönderilir. Bir işleme, birden çok yayın tanımına (birden çok ortamda) dağıtılmışsa, rozette her birinin birer girdisi olur ve her ortamın durumu gösterilir (Şekil 93) . Bu, dağıtımlara kod işlemenin izlenebilirliğini artırır.

Yayın durumu rozeti
(Şekil 93) Yayın durumu göstergesi

Bir yayın tanımı oluşturduğunuzda, varsayılan olarak tüm ortamların yayın durumu gönderilir. Bununla birlikte, durum rozetinde dağıtım durumu görüntülenecek olan ortamları seçerek belirleyebilirsiniz (örneğin yalnızca üretim ortamlarını gösterebilirsiniz) (Şekil 94) .

Dağıtım seçenekleri iletişim kutusu
(Şekil 94) Dağıtım seçenekleri iletişim kutusu

Yapıt eklenirken kullanılan Derleme tanımı menüsündeki iyileştirmeler

Bir yayın tanımına derleme yapıtı eklerken artık tanımları klasör düzeni bilgileriyle görüntüleyebilir ve istenen tanımın seçilmesini basitleştirebilirsiniz (Şekil 95) . Bu, aynı olduğu halde farklı klasörlerde bulunan derleme tanımlarını birbirinden ayırt etmenizi kolaylaştırır.

Yapıt ekleme
(Şekil 95) Yapıt ekleme

Tanım listesi, filtre terimini içeren tanımlara göre filtrelenir.

Yayın tanımınızı eski sürüme döndürme

Bugün bir yayın tanımı güncelleştirildikten sonra, doğrudan önceki bir sürüme dönemezsiniz. Bunu yapmanın tek yolu, yayın tanımı geçmişine bakarak değişikliklerin farkını bulmak ve yayın tanımını el ile düzenlemektir. Artık yayın tanımının Geçmiş sekmesinden Tanımı Geri Döndür özelliğini (Şekil 96) kullanarak yayın tanımının herhangi bir eski sürümünü seçebilir ve bu sürüme geri dönebilirsiniz.

Yayın tanımını geri döndür
(Şekil 96) Yayın tanımını geri döndürme

Yayınlar için kişiselleştirilmiş bildirimler

Yayın bildirimleri, VSTS bildirim ayarları deneyimiyle tümleştirilmiştir. Yayınları yöneten kişilere artık, bekleyen işlemler (onaylar veya el ile müdahaleler) ve önemli dağıtım hataları ile ilgili otomatik bildirimler gönderilecek. Profil menüsü altındaki Bildirim ayarlarına gidip Yayın Abonelikleri’ni kapatarak bu bildirimleri kapatabilirsiniz. Ayrıca özel abonelikler oluşturarak ek bildirimlere abone olabilirsiniz. Yöneticiler Takım ve Hesap ayarları altındaki Bildirim ayarlarından takımlar ve hesaplar için abonelikleri denetleyebilir.

Yayın tanımı yazarlarının artık onay ve dağıtım tamamlama işlemleri için e-postaları el ile göndermesi gerekmiyor.

Bu özellikle, yayınlar için birden çok paydaşın bulunduğu büyük hesaplar ve onaylayan, yayın oluşturucu ve ortam sahibi dışındaki bildirim almak isteyebilecek kişiler için kullanışlıdır (Şekil 97) .

Yayın bildirimleri
(Şekil 97) Yayın bildirimleri

İpucu

Daha fazla bilgi için yayın bildirimlerini yönetme hakkındaki gönderiye bakın.

Test etme

Microsoft Test Yöneticisi’nde Laboratuvar Merkezi ve otomatikleştirilmiş test akışları için sunulan destek kaldırılıyor

Derleme ve Yayın Yönetiminin geçirdiği evrim nedeniyle XAML derlemeleri TFS 2018’de artık desteklenmiyor ve bunun sonucunda, TFS ile Microsoft Test Yöneticisi’nin (MTM) kullanımı için sunulan destek güncelleştiriliyor. TFS 2018 sürümünden itibaren, otomatikleştirilmiş test için MTM’deki Test Merkezi/Laboratuvar Merkezi’nin kullanımı artık TFS tarafından desteklenmiyor. XAML derlemeleri ve Laboratuvar Merkezi’nden geçiş yapmaya hazır değilseniz TFS 2018’e yükseltmemelisiniz.

TFS 2018’e yükseltmenin etkilerini aşağıda görebilirsiniz:

Laboratuvar Merkezi:
  • Artık desteklenmeyenler:
    • Laboratuvar ortamları oluşturmak ve bunları yönetmek amacıyla Test Denetleyicileri TFS’ye kaydedilemez.
    • TFS’ye kayıtlı tüm mevcut Test Denetleyicileri çevrim dışı olur ve mevcut Laboratuvar ortamları ‘Hazır Değil’ olarak görünür.
  • Önerilen alternatif:
Otomatikleştirilmiş test:
El ile Test:
  • Tüm el ile test senaryoları hala tam olarak desteklenmektedir. El ile yapılan testler TFS 2018’de MTM kullanılarak çalıştırılabilir, ancak Laboratuvar Ortamları kullanılarak bu işlem gerçekleştirilemez.
  • Tüm el ile test senaryoları için TFS web erişiminde Test merkezinin kullanılması kesinlikle önerilir.

Keşif testi yapan takımlardan aldığımız geri bildirimlerden yola çıkarak Test ve Geri Bildirim uzantısından gönderilen hata bildirimleri, görevler veya test çalışmaları sırasında izlenebilirlik bağlantılarını geliştiriyoruz. Gereksinimler keşfedilirken oluşturulan hatalar ve görevler artık takımın varsayılan değerleri yerine gereksinimle aynı alan yolu ve yinelemeyle oluşturulur. Gereksinimleri keşfederken oluşturulan test çalışmaları artık Üst <- Alt bağlantı yerine Testler -> Test Edilen bağlantısıyla ilişkilendirilecek, böylece oluşturduğunuz test çalışmaları gereksinim tabanlı test paketlerine otomatik olarak eklenecektir.>< Son olarak, belirli bir gereksinim keşfedilmediği sırada oluşturulan iş öğeleri, sprint planlaması tamamlandıktan sonra geçerli yinelemeye yeni iş öğelerinin gelmemesi için geçerli yineleme yerine takımın varsayılan yinelemesine kaydedilir.

Test Merkezindeki Test Planları ve Paketlerinde Test Çalışması iş öğeleri için filtreler

Sonuç, Yapılandırma ve Test Oluşturucu gibi Test alanlarındaki filtrelere ek olarak, artık Başlık, Durum ve Atanan gibi Test Çalışması iş öğesi alanlarını filtreleyebilirsiniz (Şekil 98).

Test çalışması filtreleri
(Şekil 98) Test çalışması filtreleri

Yayın Ortamları ve Test Çalıştırmaları için test eğilimi grafikleri

VSTS panolarında test ortamlarının durumunu izleyebilmeniz için Test Sonucu Eğilimi pencere öğesinde (Şekil 99)Yayın Ortamları desteği ekleniyor. Derleme’deki test sonuçları için yaptığınız gibi artık Yayın Ortamları için de test başarı oranını, başarılı ve başarısız testleri, toplam sayıyı ve test süresini gösteren eğilim grafikleri oluşturabilirsiniz. Ayrıca, Test Çalıştırması başlık filtresiyle grafikleri bir ortamdaki belirli bir test çalıştırmasını gösterecek şekilde filtreleyebilirsiniz.

Test eğilimi grafiği
(Şekil 99) Test eğilimi grafiği

Test Çalıştırması ve Test Sonucu açıklamaları için markdown biçimlendirme desteği

Test Çalıştırması ve Test Sonucu açıklamalarını markdown söz dizimi ile biçimlendirme desteği ekleniyor. Bu özelliği kullanarak biçimlendirilmiş metinler veya açıklamalarınızdaki URL’lerin hızlı bağlantılarını oluşturabilirsiniz. Test merkezinde Sonuç Özeti sayfasındaki Test Sonucu açıklamalarını Analizi güncelleştir özelliğiyle, Çalıştırma Özeti sayfasındaki Test Çalıştırması açıklamalarını ise Açıklamaları güncelleştir özelliğiyle güncelleştirebilirsiniz.

Derleme veya Yayın özeti sayfasında ya da Test merkezinde test sonucunu analiz ederken artık mevcut bir hatayı başarısız olan bir testle ilişkilendirebilirsiniz. Bu, zaten kaydedilen bir hata nedeniyle başarısız olan bir test olduğunda kullanışlıdır.

Test çalıştırmaları ve test sonuçları için ekleri karşıya yükleme

Artık, ekran görüntüleri ve günlük dosyaları gibi dosyaları ek bilgi olarak test çalıştırmalarına veya test sonuçlarına ekleyebilirsiniz. Şu ana kadar, bu özellik yalnızca Microsoft Test Yöneticisi (MTM) istemcisi üzerinden kullanılabiliyordu ve bu durum kullanıcıları VSTS/TFS içindeki Test merkezi ile MTM istemcisi arasında bağlam değiştirmek zorunda bırakıyordu.

Toplu görev işleme

Derleme/Yayın yönetimi içindeki Visual Studio test görevinde, etkili çalıştırma için testlerin nasıl gruplanacağını (toplu olarak işleneceğini) denetlemeye yönelik seçenekler bulunur. Testler iki şekilde gruplanabilir:

  1. Çalıştırmaya katılan test ve aracı sayısını temel alan ve testleri belirli bir boyuttaki toplu işler halinde basitçe gruplayan yöntem.
  2. Geçmişteki çalışma sürelerini temel alarak testleri, her toplu iş yaklaşık olarak eşit çalışma süresine sahip olacak şekilde toplu işler halinde gruplayan yöntem (Şekil 100) . Hızlı çalışan testler aynı toplu işte gruplanırken daha uzun süren testler farklı bir toplu işe ait olabilir. Bu seçenek, toplam test süresini en aza indirmek için çok aracılı aşama ayarıyla birleştirilebilir.
Toplu işlemi test etme
(Şekil 100) Test işlem grubu oluşturma

VSTest görevini kullanarak web testleri çalıştırma

Visual Studio test görevi kullanılarak, web performansı testleri olarak da bilinen web testleri, CI/CD işlem hattında çalıştırılabilir. Web testleri, görev derleme girişinde çalıştırılacak testler belirtilerek çalıştırılabilir. Bir web testine bağlı “ilişkili otomasyon” içeren test çalışması iş öğeleri, görevde test planı/test grubu seçilerek de çalıştırılabilir (Şekil 101) .

Test seçimi
(Şekil 101) Test seçimi

Web testi sonuçları, test sonucunun eki olarak kullanılabilir (Şekil 102) . Bu, Visual Studio’da çevrimdışı analiz için indirilebilir.

Test özeti
(Şekil 102) Test özeti

Bu özellik, Visual Studio test platformundaki değişikliklere bağlıdır ve derleme/yayın aracısında Visual Studio 2017 Güncelleştirme 4’ün yüklü olmasını gerektirir. Web testleri Visual Studio’nun önceki sürümleri kullanılarak çalıştırılamaz.

Benzer şekilde, web testleri İşlevsel Test Çalıştır görevi kullanılarak çalıştırılabilir. Bu özellik, Test Aracısı’nda Visual Studio 2017 Güncelleştirme 5 ile kullanıma sunulacak değişikliklere bağlıdır.

İpucu

Bunu yük testiyle birlikte kullanmaya yönelik bir örnek görmek için Visual Studio ve VSTS kullanarak bulutta uygulamanız için yük testi yapma hızlı başlangıç belgesine bakın.

Test planları ve test paketleri için grafik pencere öğesi

Daha önce, Test merkezinde test planları ve paketleri için grafikler oluşturarak panoya sabitleme seçeneği bulunuyordu. Şimdi, panodaki pencere öğesi kataloğundan test planları ve paketleri için grafikler oluşturmaya olanak sağlayan bir pencere öğesi ekledik. Test yazma durumu veya test çalıştırma durumu için grafikler oluşturabilirsiniz. Ayrıca, pencere öğesinden grafikler eklemek, bir grafikte gösterilecek daha fazla veriniz olduğunda daha büyük grafikler oluşturmanıza olanak sağlar (Şekil 103) .

Grafik pencere öğesi
(Şekil 103) Grafik pencere öğesi

El ile yapılan testler için, masaüstü uygulamalarında Chrome tarayıcısı ile ekran görüntüsü ve ek açıklama desteği.

El ile yapılan testlerde en çok istenen önerilerden biri için destek ekliyoruz: Test merkezinde Web Test Çalıştırıcısı’ndan masaüstü uygulamaların ekran görüntülerini alma. Şimdiye kadar, masaüstü uygulamalarının ekran görüntülerini yakalamak için Microsoft Test Yöneticisi’nde Test Çalıştırıcısı’nı kullanmanız gerekiyordu. Bu işlevi kullanmak için Test ve Geri bildirim uzantısını yüklemeniz gerekir. Chrome tarayıcısı için destek sunmaya başlıyoruz, kısa bir süre sonra Firefox desteği de sunulacaktır.

SharePoint için TFS Uzantısı durduruluyor

TFS 2018 ve üzeri sürümler artık SharePoint için TFS Uzantısını desteklemez. Ayrıca, bir TFS Sunucusu ile SharePoint sunucusu arasındaki etkileşimi yapılandırmak için kullanılan ekranlar Team Foundation Yönetim Konsolu’ndan kaldırıldı.

Not

SharePoint ile tümleştirmek için yapılandırılmış eski bir sürümden TFS 2018’e yükseltiyorsanız yükseltmeden sonra SharePoint tümleştirmesini devre dışı bırakmanız gerekir. Aksi takdirde, TFS SharePoint siteleriniz yüklenemez.

SharePoint sunucusunda tümleştirmeyi devre dışı bırakmanıza olanak sağlayan bir çözüm oluşturduk. Daha fazla bilgi için lütfen TFS/SharePoint Tümleştirmemize yönelik gelecek planlar hakkındaki gönderiye bakın.

Takım Odaları durduruluyor

Modern geliştirme ekipleri yoğun işbirliğine dayanır. Takım üyeleri, etkinlikleri (bildirimler) izlemek ve bunlar üzerine konuşmak (sohbet) için bir yer ister (ve buna ihtiyaç duyar). Birkaç yıl önce bu eğilimi fark ettik ve böyle senaryoları desteklemek için Takım Odası’nı oluşturduk. O zamandan beri, işbirliği yapmaya yönelik daha fazla çözüm pazara sunuldu. En çok göze çarpan gelişme, Slack’in yükselişiydi. Daha yakın bir tarihte de Microsoft Teams duyuruldu.

TFS ve Visual Studio Team Services ile sorunsuz bir biçimde tümleştirilebilen bu kadar iyi çözüm karşısında, Takım Odası özelliğini hem TFS 2018’den Visual Studio Team Services’ten kaldırmaya ilişkin planlarımızı Ocak ayında duyurduk.


Memnun kaldınız mı?

Görüşlerinizi almaktan mutluluk duyarız! Geliştirici Topluluğu portalı aracılığıyla bir sorunu bildirip izleyebilir ve Stack Overflow’da öneri alabilirsiniz.


Sayfanın Başı