Birleştir komutu (Team Foundation Sürüm Denetimi)

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

Visual Studio 2019 | Visual Studio 2022

komutu, tf merge Team Foundation Sürüm Denetimi(TFVC) içinde bir daldan diğerine değişiklikleri uygular.

Not

Bu komutun sonuçları, siz iade işlemi yapıncaya kadar Azure DevOps sunucusuna yansıtılamaz. Daha fazla bilgi için bkz . Kod geliştirme ve bekleyen değişiklikleri yönetme.

Önkoşullar

komutunu kullanmak merge için, öğesini içeren çalışma alanı klasörü için Kullanıma al iznine izin ver olarak ayarlı ve öğesini içeren destinationçalışma alanı klasörü sourceiçin Okuma iznine izin ver olarak ayarlanmış olmalıdır. Daha fazla bilgi için bkz . Varsayılan TFVC izinleri.

Sözdizimi

tf merge [/recursive] [/force] [/candidate] [/discard] 
[/version:versionspec] [/lock:none|checkin|checkout] [/preview] 
[/baseless] [/nosummary] [/noimplicitbaseless] [/conservative] [/format:(brief|detailed)] [/noprompt] [/login:username,[password]] source destination

Parametreler

Bağımsız değişkenler

Bağımsız değişken

Açıklama

<versionspec>

seçeneği gibi C2/version bir değer sağlar. TFVC'nin kapsamı içinde hangi öğelerin olduğunu belirlemek için bir sürüm belirtimini nasıl ayrıştırdığı hakkında daha fazla bilgi için bkz . Team Foundation sürüm denetimi komutlarını kullanma.

<source>

Birleştirmenin kaynağı olarak davranacak dosya veya klasörü belirtir.

<destination>

Birleştirmenin hedefi olarak davranacak dosya veya klasörü belirtir.

<username>

seçeneğine /login bir değer sağlar. Bir username değeri veya usernameolarak DOMAIN\username belirtebilirsiniz.

Seçenekler

Seçenek

Açıklama

/recursive

Geçerli dizindeki source ve alt klasörlerdeki öğe belirtimleriyle eşleşir.

/force

Birleştirme geçmişini yoksayar ve bu değişikliklerin bazıları veya tümü daha önce birleştirilmiş olsa bile kaynaktan belirtilen değişiklikleri hedefle birleştirir.

/candidate

Kaynaktaki henüz hedefle birleştirilmemiş tüm değişiklik kümelerinin listesini yazdırır. Liste, birleştirilmemiş değişiklik kümesi kimliğini ve bu değişiklik kümesiyle ilgili diğer temel bilgileri içermelidir. Belirli bir sonuca ilişkin yıldız işareti kısmen birleştirildiğini gösterir. Bu, değişiklik kümesindeki bazı değişikliklerin birleştirildiği ve diğer değişikliklerin birleştirilmemiş olduğu anlamına gelir.

/discard

Birleştirme işlemini yapmaz, ancak birleştirmenin gerçekleştiğini izlemek için birleştirme geçmişini güncelleştirir. Bu, değişiklik kümesinin belirli bir birleştirme için kullanılmasını engeller.

/version

Seçmeli birleştirme için, bu seçenek hedefle birleştirilecek aralığı belirtir. Yakalama birleştirmesi için bu parametre, birleştirilmemiş tüm değişikliklerin birleştirileceği sürümü belirtir.

Seçmeli birleştirme için sürüm aralığı, birleştirilecek değişiklik kümesinin başlangıç ve bitiş noktalarını belirtir. Örneğin, sürümünü 4~6birleştirmeye çalışırsanız, 4, 5 ve 6 değişiklik kümeleri birleştirilir.

/lock

Bir kilit türünü belirtir veya bir öğeden kilidi kaldırır. Daha fazla bilgi için bkz . Kilit türlerini anlama.

Kilit seçenekleri:

  • None: Bir öğeye kilit yerleştirmez ve öğeden mevcut kilidi kaldırır.

  • Checkin: Diğer kullanıcılar belirtilen öğeleri kullanıma alabilir, ancak siz bir iade işlemi gerçekleştirerek kilidi serbest bırakana kadar kilitli dosyalardaki düzeltmeleri iade yapamazlar. Diğer kullanıcılar belirtilen öğelerden herhangi birini kilitlemişse, kilitleme işlemi başarısız olur.

  • Checkout: Siz kilidi açıkça serbest bırakana kadar kullanıcıların belirtilen öğelerden herhangi birini denetlemesini veya kullanıma almalarını engeller. Diğer kullanıcılar belirtilen öğelerden birini kilitlemişse veya herhangi bir öğede bekleyen değişiklikler varsa, kilitleme işlemi başarısız olur.

/preview

Birleştirmenin önizlemesini gösterir.

/baseless

Temel sürüm olmadan birleştirme gerçekleştirir. Başka bir ifadeyle, kullanıcının birleştirme ilişkisi olmayan dosya ve klasörleri birleştirmesine olanak tanır. Temelsiz birleştirmeden sonra birleştirme ilişkisi olur ve gelecekteki birleştirmelerin temelsiz olması gerekmez.

Not

Temelsiz birleştirmeler hedefteki dosyaları silemez. Bu değişiklikleri el ile taşıyabilirsiniz.

/noimplicitbaseless

TFVC'nin, ilişkisiz iki sürüm denetimi ağacında aynı göreli ada sahip iki öğe arasında örtük temelsiz birleştirme yapmayacağını belirtir.

/nosummary

Çakışmaların, hataların ve uyarıların özetini atlar.

/noprompt

Sizden gelen tüm giriş istemlerini gizler.

/conservative

Bir dalı başka bir dalla birleştirdiğinizde daha fazla çakışmayla sonuçlanır.

/format

Birleştirme çakışmalarını özetleme biçimlerini belirtir:

  • Brief (varsayılan): Yalnızca toplam çakışma, uyarı ve hata sayısını özetler.
  • Detailed: Yalnızca toplam çakışma, uyarı ve hata sayısını özetlemekle kalmaz, aynı zamanda her çakışmayla ilgili ayrıntıları da listeler.

Not

Bu seçenek yalnızca çıkış çakışmaların özetini içerdiğinde geçerlidir. Seçenek kullanıldığında veya birleştirme 10'dan az çakışmaya, uyarıya ve hataya neden olduğunda /nosummary özet gösterilemiyor.

/login

Azure DevOps ile kullanıcının kimliğini doğrulamak için kullanıcı adını ve parolayı belirtir.

Açıklamalar

Mevcut bir kaynak daldaki tf değişiklikleri var olan bir hedef dala uygulamak için komut satırı yardımcı programının komutunu kullanabilirsinizmerge. Tek bir düzeltmeyi veya tam değişiklik kümesini hedef dalla birleştirebilirsiniz. Değişiklikleri kaynaktan hedef dala veya hedeften kaynak dala birleştirebilirsiniz.

Komutu ayrıca merge , hedef dala geçirilmemiş bir kaynak daldaki değişiklikleri sorgulamanıza da olanak tanır. Komutu ayrıca belirli değişikliklerin hiçbir zaman kaynaktan hedefe birleştirilmeyeceğini ve artık birleştirme işlemi için aday olarak görüntülenmemesi gerektiğini belirtmenize olanak tanır.

Komut satırı yardımcı programını kullanma tf hakkında daha fazla bilgi için bkz . Team Foundation sürüm denetimi komutlarını kullanma.

Temelsiz birleştirme

Doğrudan birbirlerinden dallanmamış öğeleri birleştirmek için temelsiz birleştirmeyi kullanın. Temelsiz birleştirme yapmak için komutunu kullanmanız tf merge gerekir. Temelsiz birleştirme yaptığınızda, TFVC'nin dallardaki dosyaların ilişkisi hakkında hiçbir bilgisi yoktur. Temelsiz birleştirmede el ile çakışma çözümleri yapmanız gerekir. Temelsiz birleştirmeyi yaptıktan ve çakışmaları çözümledikten sonra, TFVC birleştirme geçmişini kaydeder ve klasörlerle dosyalar arasında bir ilişki kurar.

çalıştırdığınızda tf merge, TFVC daha önce ilişkili iki sürüm denetimli ağaçta aynı göreli ada sahip öğeler arasında örtük bir temelsiz birleştirme yapar. Örneğin, ile ilgili dalları $SRC$TGTbirleştirmek isteyebilirsiniz. Her iki dal da a.txt adlı ilişkisiz bir dosya içerir. çalıştırdığınızdatf merge, TFVC iki dosya aynıysa, FIPS uyumlu şifreleme devre dışı bırakılırsa ve kaynak dosya hedefteki diğer dosyalarla ilgili değilse iki a.txt dosyası arasında bir ilişki kurar.

Seçenek kümesiyle çalıştırırsanıztf merge, TFVC iki dalı birleştirmeye çalıştığında, değişiklikleri iade etmeye çalıştığınızda iki a.txt dosyası ad alanı çakışması /noimplicitbaseless oluşturur. Çakışmayı çözmek için dosyalardan birini yeniden adlandırmanız gerekir.

Örnekler

Aşağıdaki örnek, MyFile_RTM birleştirilmemiş MyFile_beta1 değişiklikleri birleştirir.

c:\projects>tf merge MyFile_beta1 MyFile_RTM /recursive

Aşağıdaki örnek, 137 değişiklik kümesini branch2 ile birleştirir.

c:\projects>tf merge /version:C137~C137 branch1 branch2 /recursive

Aşağıdaki örnek, 137 değişiklik kümesine kadar olan tüm değişiklik kümelerini branch2 ile birleştirir.

c:\projects>tf merge /version:C137 branch1 branch2 /recursive

Aşağıdaki örnek, branch1'de branch2 ile birleştirilmemiş değişiklik kümelerinin listesini yazdırır.

c:\projects>tf merge /candidate branch1 branch2 /recursive

Aşağıdaki örnek, branch2'de branch1 ile birleştirilmemiş değişiklik kümelerinin listesini yazdırır.

c:\projects>tf merge /candidate branch2 branch1 /recursive

Aşağıdaki örnek, branch2 ile birleştirme adayı olarak 137 değişiklik kümesini atar.

c:\projects>tf merge /discard /version:C137~C137 branch1 branch2 /recursive

Aşağıdaki örnek, 137 değişiklik kümesine kadar olan tüm değişiklik kümelerini branch2 ile birleştirme adayları olarak atar.

c:\projects>tf merge /discard /version:C137 branch1 branch2 /recursive