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ü source
iç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 username
olarak 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~6
birleş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
$TGT
birleş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