Projeniz için doğru sürüm denetimini seçme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Yazılım projenizin büyük veya küçük olması fark etmez, sürüm denetimini en kısa sürede kullanmak iyi bir fikirdir. Azure Repos iki tür sürüm denetimini destekler: Git ve Team Foundation Sürüm Denetimi (TFVC).

Hangi sürüm denetim sistemini kullanmalıyım?

Git, yeni projeler için varsayılan sürüm denetimi sağlayıcısıdır. Projelerinizde sürüm denetimi için Git'i kullanmanız ve mevcut TFVC projelerinizi Git'e taşımaya başlamanız gerekir. TFVC, özellik tamamlandı olarak kabul edilir. Azure DevOps, TFVC ile uyumluluğu sürdürür, ancak Git gelecekteki tüm yatırımları alır.

TFVC depolarını aynı projede Git ile kullanabilirsiniz, bu nedenle merkezi sürüm denetimine ihtiyacınız varsa TFVC'yi daha sonra kolayca ekleyebilirsiniz. Mevcut bir proje için yeni bir depo türü ayarlamak için bu yönergeleri kullanın.

Git (dağıtılmış)

Git, dağıtılmış bir sürüm denetim sistemidir. Her geliştirici, geliştirme makinelerinde kaynak deponun bir kopyasına sahiptir. Geliştiriciler geliştirme makinelerinde her değişiklik kümesini işleyebilir ve geçmiş gibi sürüm denetimi işlemleri gerçekleştirebilir ve ağ bağlantısı olmadan karşılaştırabilir. Dallar hafiftir. Bağlamları değiştirmeniz gerektiğinde özel bir yerel dal oluşturabilirsiniz. Kod tabanınızın farklı çeşitlemeleri arasında özetleme yapmak için bir daldan diğerine hızla geçiş yapabilirsiniz. Daha sonra dalı birleştirebilir, yayımlayabilir veya atabilirsiniz.

Not

Visual Studio, Azure DevOps Services ve TFS'de Git standart Git'tir. Visual Studio'yu üçüncü taraf Git hizmetleriyle ve TFS ile üçüncü taraf Git istemcilerini de kullanabilirsiniz.

Daha fazla bilgi edinmek için bkz. Git ve Azure Repos.

TFVC (merkezi)

Team Foundation Sürüm Denetimi (TFVC) merkezi sürüm denetim sistemidir. Genellikle, ekip üyeleri kendi geliştirme makinelerinde her dosyanın yalnızca bir sürümüne sahiptir. Geçmiş verisi yalnızca sunucuda tutulur. Dallar, yol tabanlıdır ve sunucuda oluşturulur.

TFVC'nin iki iş akışı modeli vardır:

  • Sunucu çalışma alanları - Değişiklik yapmadan önce ekip üyeleri dosyaları genel kullanıma alır. Çoğu işlem, geliştiricilerin sunucuya bağlanmasını gerektirir. Bu sistem iş akışlarının kilitlenmesini kolaylaştırır. Bu şekilde çalışan diğer sistemler Arasında Visual Source Safe, Perforce ve CVS yer alır. Sunucu çalışma alanlarıyla, dal başına milyonlarca dosya ve büyük ikili dosyalar ile çok büyük kod tabanlarına ölçeklendirin.

  • Yerel çalışma alanları - Her ekip üyesi, kod tabanının en son sürümünün bir kopyasını alır ve gerektiğinde çevrimdışı çalışır. Geliştiriciler değişikliklerini iade eder ve çakışmaları gerektiği gibi çözer. Bu şekilde çalışan başka bir sistem de Subversion'dır.

Daha fazla bilgi edinmek için bkz . TFVC'ye genel bakış

TFVC'den Git'e geçiş

Mevcut TFVC depolarınız varsa, git-tfs aracını kullanarak bunları Git depolarına geçirebilirsiniz. Araç, TFVC deposunu yalnızca birkaç komutla Git deposuna geçirmenizi sağlar.

Git ve TFVC özellikleri

Seçim yapmak için daha fazla yardıma mı ihtiyacınız var? Bu grafikler yardımcı olabilir.

Özellik

TFVC

Git


Değişiklikler

Ekip üyeleri, geliştirme makinelerindeki dosyaları eşzamanlı olarak değiştirebilir. Değişiklik kümelerini oluşturduğunuzda sunucuya yüklersiniz (iade edebilirsiniz). Değişikliklerinizi istediğiniz zaman karşıya yükleyebilirsiniz. Ancak çakışmalar kesintiye uğrayabilir.

Bir değişiklik kümesini iade ettikten sonra açıklamasını değiştirebilirsiniz. Değişiklik kümelerini iş öğelerine bağlayabilir ve bunları tamamlanmış derlemelerle ilişkilendirebilirsiniz.

Ekip üyeleri, geliştirme makinelerindeki dosyaları eşzamanlı olarak değiştirebilir. Geliştirme makinenizde işlemeleri, takıma katkıda bulunmalarından bağımsız olarak oluşturursunuz. Hazır olduğunuzda, sunucuya yüklemeden (göndermeden) önce en son işlemeleri çekmeniz gerekir. Çekerken çakışmalar kesintiye uğrayabilir.

En son yerel işlemeyi değiştirebilirsiniz. Eski işlemeleri değiştiremezsiniz. İşlemeleri iş öğelerine bağlayabilir ve tamamlanmış derlemelerle ilişkilendirebilirsiniz.

Komut isteminden yerel işlemeleri değiştirebilir ve birleştirebilirsiniz.

Dallara ayırma

Yol tabanlı dallar, özellik ekipleri ve yayınlar arasında değişiklik riskini yalıtmak için çoğunlukla uzun süredir devam eden yapılar olarak kullanılır. Ekip üyeleri genellikle üzerinde çalıştıkları her dal için ek bir çalışma alanı ayarlar.

Her daldaki değişiklikler birbirinden bağımsızdır, bu nedenle bir daldan diğerine geçmeden önce bunları iade etmek zorunda değilsiniz. Eşdüzey dallar arasında birleştirmek için temelsiz birleştirme gerekir.

Dal yapılarınızın ve değişiklik kümelerinizin birleştirildiği yerlerin görselleştirmelerini alabilirsiniz.

Bkz. Team Foundation Sürüm Denetimi'da riski yalıtmak için dalları kullanma.

Dallanma hafiftir ve yoldan bağımsızdır. Birçok geliştirici, kodladıkları her yeni özellik için bazen günlük olarak bir dal oluşturur. Kod tabanınızın farklı çeşitlemeleri arasında özetleme yapmak için bir daldan diğerine hızla geçiş yapabilirsiniz. Yalnızca geliştirme makinenizde var olan dallar oluşturabilir ve hazır olduğunuzda bunları paylaşabilirsiniz.
Dallar arasında geçiş yapmadan önce değişiklikleri işlemeniz, dallamanız, hazırlamanız veya geri almalısınız. Birleştirme basit bir işlemdir ve dalın temel alındığı işlemeden bağımsızdır. Hangi dallarda hangi işlemelerin mevcut olduğunu görmek için dalları karşılaştırabilirsiniz.

Bkz. Bağlamları değiştirmek, çalışmayı askıya almak ve riski yalıtmak için Git dallarını kullanma.

Çakışma çözümü

Çakışmaları aldığınızda, iade ettiğinizde, birleştirdiğinizde veya raftan kaldırdığınızda çözmeniz gerekebilir. Visual Studio'daki tüm çakışma türlerini çözebilirsiniz.

Çekme veya birleştirme sırasında çakışmaları çözmeniz gerekebilir. İçerik çakışmalarını Visual Studio'da veya komut isteminden çözebilirsiniz.

Dosya depolama

Büyük ikili dosyaları iade edebilirsiniz. NuGet'i birlikte veya alternatif olarak da kullanmak isteyebilirsiniz.

Normal dosyalar gibi küçük ikili dosyaları iade edebilirsiniz. Büyük ikili dosyalarla çalışırken, büyük ikili dosyalarınızı Azure Repos depolamak için Git-LFS kullanın.

Geçmiş

Dosya geçmişi istemci geliştirme makinesinde çoğaltılmaz ve bu nedenle yalnızca sunucuya bağlı olduğunuzda görüntülenebilir. Geçmişi Visual Studio'da ve web portalında görüntüleyebilirsiniz . Bir satırı kimin ve ne zaman değiştirdiğini görmek için dosyalara açıklama ekleyebilirsiniz.

Dosya geçmişi istemci geliştirme makinesinde çoğaltılır ve sunucuya bağlı olmasa bile görüntülenebilir. Geçmişi Visual Studio'da ve web portalında görüntüleyebilirsiniz. Bir satırı kimin ve ne zaman değiştirdiğini görmek için dosyalara açıklama ekleyebilirsiniz.

Dosyalarınızı etiketleme

Visual Studio'dan veya komut isteminden bir veya daha fazla dosya sürümüne etiket uygulayabilirsiniz . Her dosyanın etiketi farklı bir sürüme uygulanmış olabilir.

Komut isteminden tek tek işlemelere etiket uygulayabilirsiniz. Visual Studio geçmiş penceresinde etiketleri görüntüleyin.

Değişiklikleri geri alma

bir işlemeyi geri alabilirsiniz.

Ölçek

Yerel çalışma alanlarını kullanarak küçük veya çok büyük ölçekli projelerde çalışabilirsiniz. Sunucu çalışma alanlarını kullanarak büyük ölçekli (dal başına milyonlarca dosya ve büyük ikili dosyalar) projelerini destekler.

Küçük projelere hızlı bir şekilde başlayabilirsiniz. Ölçeği çok büyük projelere genişletebilirsiniz, ancak kod tabanınızı modüler hale getirmek için önceden planlamanız gerekir. Bir projede birden çok depo oluşturabilirsiniz.

Sunucu

Özellik

TFVC

Git


Sunucu

Azure DevOps Services, TFS

Azure DevOps Services, TFS ve Git üçüncü taraf hizmetleri

Uyarılar

İşlemeler sunucuya gönderildiğinde ekip üyeleri e-posta uyarıları alabilir.

Denetlenebilirlik

Ekibiniz tüm çalışmalarını merkezi bir sistemde denetlediğinden, değişiklik kümesinde hangi kullanıcının iade olduğunu belirleyebilir ve neleri değiştirdiğini görmek için karşılaştırmayı kullanabilirsiniz. Bir dosyaya bakarak, bir kod bloğunu kimin ve ne zaman değiştirdiğini belirlemek için dosyaya açıklama ekleyebilirsiniz.

Hangi kullanıcının bir işlemeyi gönderebileceğini belirleyebilirsiniz. (Herkes, işlemeyi yapan yazar veya kişi olarak herhangi bir kimliği talep edebilir.) Geçmiş, karşılaştırma ve açıklama ekleme kullanarak değişikliklerin ne zaman yapıldığını ve nelerin değiştirildiğini belirleyebilirsiniz.

Derlemeler (TFBuild tarafından otomatikleştirilmiş)

Proje koleksiyonunda istediğiniz içeriğin herhangi bir bileşimini oluşturmak için tüm TFBuild özelliklerini kullanabilirsiniz.

TFBuild özelliklerinin çoğunu kullanarak tek seferde bir proje ve bir kerede bir veya daha fazla depo oluşturabilirsiniz.

Kod incelemeleri

Evet; bkz. Devops Geliştiricisinin hayatındaki gün: Çalışmayı askıya alın, bir hatayı düzeltin ve bir kod incelemesi gerçekleştirin. Daha basit tartışmalar için, web portalından değişiklik kümesi hakkında yorum yapabilir ve e-posta gönderebilirsiniz.

Evet; Bkz . Çekme isteği yürütme. Daha basit tartışmalar için web portalından işleme hakkında yorum yapabilir ve e-posta gönderebilirsiniz.

Dosyalar

Her proje tek bir kök yol altındaki tüm dosyaları içerir (örneğin: $/FabrikamTFVC). İzinleri dosya düzeyinde uygulayabilirsiniz. Dosyaları kilitleyebilirsiniz.

Web portalında ve Visual Studio'da Kaynak Denetim Gezgini'ni kullanarak dosyalarınıza göz atabilirsiniz.

Projeniz yalnızca bir sunucuda var.

Her proje bir veya daha fazla Git deposu içerebilir ve her Git deposu bir veya daha fazla dal içerebilir. Uygulayabileceğiniz en ayrıntılı izinler bir depo veya daldır. Dosyalar kilitlenemez.

Web portalında dosyalarınıza göz atabilirsiniz.

İşlemeleri birden çok uzak depoya (örneğin, hem proje deponuza hem de Windows Azure'da barındırılan web sitenize) gönderebilirsiniz.

Kalite kapıları

CI derlemelerini, geçitli iade derlemelerini ve iade ilkelerini kullanabilirsiniz.

Dal ilkeleri aracılığıyla CI derlemelerini ve geçitli iade derlemelerini kullanabilirsiniz.

İstemci

Özellik

TFVC

Git


İstemci yazılımı

Visual Studio, Eclipse (Team Explorer Everywhere ile

Visual Studio, Visual Studio Code, Eclipse ve diğer üçüncü taraf araçları

Dosyalar

Visual Studio'da Kaynak Denetim Gezgini'ni veya Windows Dosya Gezgini veya komut istemini kullanarak dosyalarınıza göz atabilirsiniz.

Windows Dosya Gezgini veya komut istemini kullanarak dosyalarınıza göz atabilirsiniz.

Geliştirme makinenizde çalışmayı yönetme

Sayfaları değiştirir, işler ve dallar.

Çalışmanızı askıya alma

(Visual Studio'dan veya komut isteminden) veya zuladan (komut isteminden) bir dal oluşturabilirsiniz

Visual Studio uyumluluğu

Visual Studio 2013+

Visual Studio 2012 Güncelleştirme 4'ü de kullanabilirsiniz (Git için Visual Studio Araçları de yüklemeniz gerekir).

Web portalı

Kod tabanınıza (dallar dahil) göz atabilir, geçmişi görüntüleyebilir, değişiklik kümelerine ve raf kümelerine açıklama ekleyebilir ve kod tabanınızın seçili bölümlerini .zip dosyası olarak geçici olarak indirme gibi diğer görevleri gerçekleştirebilirsiniz.

Kod tabanınıza göz atabilir, geçmişi görüntüleyebilir, dalları karşılaştırabilir, işlemelere açıklama ekleyebilir ve kod tabanınızın seçili bölümlerini .zip dosyası olarak geçici olarak indirme gibi diğer görevleri gerçekleştirebilirsiniz.

Tümleştirme ve geçiş

Özellik

TFVC

Git


Geçiş yolu