Fark komutu
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Team Foundation Sürüm Denetimi (TFVC) difference
komutu, iki dosya, iki klasördeki dosyalar veya raf kümesi ile yerel veya sunucu dosyası arasındaki farkları karşılaştırır ve mümkünse görüntüler.
Önkoşullar
komutunu kullanmak difference
için, belirtilen tüm öğeler için Okuma izninizin İzin Ver olarak ayarlanmış olması gerekir. Daha fazla bilgi için bkz . Varsayılan TFVC izinleri.
Sözdizimi
tf diff[erence] itemspec [/version:versionspec] [/type:filetype]
[/format:format [/ignorespace] [/ignoreeol] [/ignorecase] [/recursive]
[/options][/noprompt][/login:username,[password]]
tf diff[erence] itemspec itemspec2 [/type:filetype] [/format: format]
[/ignorespace] [/ignoreeol] [/ignorecase] [/recursive] [/options] [/noprompt][/login:username,[password]]
tf diff[erence] [/shelveset:shelvesetname[;shelvesetowner]]
shelveset_itemspec [/type:filetype]
[/format: format] [/ignorespace] [/ignoreeol] [/ignorecase]
[/recursive] [/options] [/noprompt][/login:username,[password]]
tf diff[erence] /configure
Parametreler
Bağımsız değişkenler
Bağımsız değişken
Açıklama
<itemspec>
Gerekli. Karşılaştırılacak öğeyi belirtir. Sürüm veya yol belirtilmezse geçerli çalışma alanı sürümü varsayılır. Hem yerel hem de Azure DevOps sunucu yollarını kabul eder.
TFVC'nin hangi öğelerin kapsam içinde olduğunu belirlemek için öğesini nasıl ayrıştırdığı itemspec
hakkında daha fazla bilgi için bkz . Team Foundation sürüm denetimi komutlarını kullanma.
Komut difference
joker karakterleri desteklemez.
Bu parametre seçeneğiyle /shelveset
birleştirilemiyor.
<itemspec2>
isteğe bağlı. Karşılaştırılacak öğe itemspec
. İkinci itemspec
bir sağlamazsanız öğenin en son Azure DevOps sunucu sürümü kullanılır.
<filetype>
seçeneği için /type
bir değer sağlar. Bir kod sayfası için veya text
ve kod sayfası numarası ya da kolay ad belirtebilirsinizbinary
.
<format>
Aşağıdaki türlerden birinin çıkış biçimini belirtme seçeneğiyle birlikte /format
kullanılır:
Visual
Brief
Context
RCS
SS
SS_SideBySide
SS_Unix
Unified
Unix
Bu çıkış biçimleri Açıklamalar bölümünde açıklanmıştır.
<versionspec>
Seçeneği için /version
kullanıcı tarafından sağlanan değer. 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.
<shelvesetowner>
Raf kümesinin sahibini kullanıcı adına göre tanımlar. Bu parametre için bir değer sağlanmazsa geçerli kullanıcı varsayılır.
<shelvesetname>
Raf kümesinin adını belirtir. Her raf kümesinin sahibi farklı bir kullanıcı olduğu sürece, TFVC çalıştıran sunucuda aynı ada sahip birden fazla raf kümesi oluşturabilirsiniz.
<shelveset_itemspec>
Raf kümesindeki bir klasörün veya dosyanın adını, temel raf kümesi sürümüyle karşılaştıracak şekilde belirtir.
<username>
seçeneğine /login
bir değer sağlar. Kullanıcı adı değerini veya username
olarak DOMAIN\username
belirtebilirsiniz.
Seçenekler
Seçenek
Açıklama
/type
Algılanan tüm kodlamaları geçersiz kılar ve belirtilen kodlamayı kullanarak dosyaları fark kayıt altyapısına sunar.
/version
Karşılaştıracak dosya veya klasörün sürümünü belirtir. Varsayılan olarak, bir sağlamazsanız versionspec
TFVC çalışma alanı sürümünü kullanır.
bayrağını /version
kullanmak yerine, her dosya adının sonuna noktalı virgül ve sürüm tanımlayıcısı ekleyerek sürümleri belirtebilirsiniz.
/format
Bağımsız değişken tarafından format
belirtilen bir çıkış biçimini belirtir.
/ignorespace
Karşılaştırılan dosyalar arasındaki boşluk farklarını vurgulamaz.
/ignoreeol
İki dosya veya dosya sürümündeki yeni satır karakterleri arasındaki farkları yoksayar. /ignoreeol
, sekiz boşluğu aynı şekilde bir alanla aynı şekilde ele alan uygulamasından farklı ignorespace
çalışır. Ancak, seçeneğini kullanırsanız /ignoreeol
ve Dosya A değişmemiş metin alanları arasında iki yeni satır karakterine sahipse ve Dosya B'de bir tane varsa, sonuç bir fark olarak görüntülenir. Her iki dosyada da yalnızca bir yeni satır varsa, ancak A Dosyası yeni satır olarak kullanıyorsa \r\n
ve B Dosyası kullanıyorsa\n
/ignoreeol
, seçenek bunu fark olarak yoksayar.
/ignorecase
Karşılaştırılan dosyalar arasındaki harf büyük/küçük harf farklarını vurgulamaz.
/recursive
Geçerli klasör ile tüm alt klasörleri arasındaki farkları karşılaştırır.
/options
tarafından difference
çağrılacak araç için bir seçenek dizesi belirtir. Daha fazla bilgi için bkz . Dosya türünü fark aracıyla ilişkilendirme ve Dosya türünü birleştirme aracıyla ilişkilendirme.
/shelveset
Raf kümesinin temel aldığı Azure DevOps sunucu sürümüyle karşılaştırılan bir raf kümesi belirtir.
Bu seçenek bağımsız itemspec
değişkenle birleştirilemiyor. Tek tek raf kümesi öğelerini karşılaştırmak için bir shelveset_itemspec
sağlayabilirsiniz.
/noprompt
Bu işlemin tamamlanması sırasında aksi halde görüntülenecek tüm iletişim kutularını gizler.
/configure
Visual Studio kullanıcı arabiriminden Kullanıcı Araçlarını Yapılandır iletişim kutusunu çağırır. Daha fazla bilgi için bkz . Dosya türünü fark aracıyla ilişkilendirme.
/login
TFVC ile kullanıcının kimliğini doğrulamak için kullanıcı adını ve parolayı belirtir.
Açıklamalar
Not
Bu komutu çalıştırmak için komut satırına veya tf difference
yazabilirsiniztf diff
.
aşağıdakiler arasındaki farkları difference
karşılaştırmak ve mümkünse görüntülemek için komutunu kullanabilirsiniz:
Aynı dosyanın iki farklı dosyası veya iki sürümü.
Klasördeki öğelerden biri veya daha fazlası.
Azure DevOps sunucusundaki raf kümesindeki öğelerden biri, bazıları veya tümü.
Hem sürümlenmiş hem de sürümlenmemiş dosyaları karşılaştırmak için komutunu kullanabilirsiniz difference
.
TFVC tüm dosyaları türe göre kategorilere ayırır. Her iki dosya da aynı kodlamaya sahip olduğu sürece metin dosyaları birleştirilebilir ve karşılaştırılabilir. Kodlamaları aynı olmayan iki dosyayı karşılaştırmak istiyorsanız, seçeneğini kullanarak /type
bir dosyanın kodlama özelliğini geçici olarak maskeleyebilir veya geçersiz kılabilirsiniz.
İkili dosyalar karşılaştırılabilir ancak birleştirilemiyor. Komuta bir veya daha fazla ikili dosya difference
geçirdiğinizde, TFVC bu dosyayla karşılaştırıldığı öğe arasında fark olup olmadığını gösterir. TFVC'nin farklı türlerdeki dosyaları nasıl ayırt edip ele aldığı hakkında daha fazla bilgi için bkz . Dosya türlerini yönetme.
İki dosya adı belirtirseniz, iki dosya karşılaştırılır. /version bayrağını kullanmak yerine, her dosya adının sonuna noktalı virgül ve sürüm tanımlayıcısı ekleyerek sürümleri belirtebilirsiniz.
Fark komutuna yalnızca bir tane itemspec
geçirirseniz:
sağlamazsanız
versionspec
, öğenin geçerli çalışma alanı sürümünüz varsayılan olarak temel çalışma alanı sürümüyle karşılaştırılır. Örneğin,tf difference header.h
header.h dosyasının geçerli sürümünü header.h dosyasının temel aldığı sürümle karşılaştırır.gibi bir
versionspec
itemspec
tf difference header.h;LBeta1
eklerseniz, TFVC bu sürümü diskteki geçerli çalışma alanı sürümünüzle karşılaştırır.gibi
/version:C1~C4
bir sürüm aralığı belirtirseniz, aralığın iki uç noktasındaki dosyanın sürümleri karşılaştırılı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.
Çıkış biçimi türleri
format
seçeneğiyle /format
kullanılan parametresi birçok farklı çıkış biçimi belirtir. Aşağıdaki çıkış türleri kullanılabilir:
Visual
biçim türü bir dış fark uygulaması açar. Varsayılan olarak, diffmerge.exe başlatılır.Brief
biçimi, karşılaştırılan dosyaların farklı olup olmadığını yazdırır.Context
biçimi, dosyalardaki farklar için bağlam çizgileri sağlar. Bu biçim UNIX tabanlıdiff -c
çıkış biçiminden türetilir.RCS
biçim ile benzerdir/format:unix
, ancak bağlam çizgileri sağlanmamıştır. Dosyanın sonunda eksik satır sonu işaretçisi için özel bir iletim sağlanmadı.SS
, Görsel Kaynak Kasa için varsayılan fark çıkış biçimidir. Daha fazla bilgi için bkz . Fark (komut satırı).SS_SideBySide
, Visual Source Kasa için varsayılan yan yana çıkış biçimidir.SS_Unix
çıkış biçimine/format:unix
benzer, ancak/format:ss_unix
bağlam çizgileri içerir ve/format:unix
içermez.Unified
biçimi UNIX tabanlıdiff -u
çıkış biçiminden türetilir./format:context
fark dizeleri arasında özdeş bağlam çizgilerini yineler, ancak/format:unified
yinelemez.Unified
biçimi, yalnızca bir sonraki fark dizesine olan uzaklık bağlam çizgilerinin sayısından büyük olduğunda yeni bir birleşik fark dizesi (@@ ... @@
) çizgisi oluşturur.Unix
çıkış türü UNIX tabanlıdiff
komut çıktı biçiminden türetilir.Çıkış
Unix
biçimi aşağıdaki şekilde oluşturulur:<metadataline> "< " line prefix for lines from the first file "---" line "> " line prefix for lines from the second file <metadataline> can be one of these possibilities: #a#,# -- add lines from line # in file1 into file2 at lines #-># #,#d# -- delete lines from line # -> # in file 1 from file2 at line # #,#c#,# -- change lines from line # -> # in file1 into the lines in file2 at line # -> # # signs separated by commas indicate a line range. # signs before the character indicate line numbers in the first file. # signs after the character indicate line numbers in the second file. /// No end of line marker at the end of the file: /// \ No newline at end of file
Örnekler
Aşağıdaki örnek, 314.cs yerel sürümü ile Azure DevOps sunucusundan kullanıma alınan dosyanın sürümü olan 314.cs çalışma alanı sürümü arasındaki farkları görüntüler.
c:\projects>tf difference 314.cs
Aşağıdaki örnek, src klasöründe değiştirilmiş olan tüm dosyaları görüntüler, ancak src'nin alt klasörlerinde değiştirilmiş dosyaları görüntülemez.
c:\projects>tf difference src /format:visual
Aşağıdaki örnekte, değişiklik kümesi 3 ile 1254.cs değişiklik kümesi 8 arasındaki farklar gösterilir.
c:\projects>tf difference /version:C3~C8 1254.cs
Aşağıdaki örneklerde etikete release
ait 314.cs sürümü ile değişiklik kümesi 3200'e ait sürüm arasındaki farklar gösterilir.
c:\projects>tf difference 314.cs;Lrelease 314.cs;C3200
-veya-
c:\projects>tf difference 314.cs;Lrelease~C3200
Aşağıdaki örnek, Pat adlı kullanıcının raf kümesinde PeerCodeReview8
rafa aldığı e271.cs sürümleri ile değişikliklerini temel aldığı temel raf kümesi sürümü arasındaki farkı gösterir. Çıkış ayrıca, kullanıcı rafa kaldırıldığında bekleyen e271.cs
değişiklik türlerini de gösterir.
c:\projects> tf difference /shelveset:PeerCodeReview8;Pat e271.cs
Aşağıdaki örnek, raf kümesindeki PeerCodeReview2
tüm dosyalar ile bu dosyaların temel raf kümesi sürümü arasındaki farkları görüntüler.
c:\projects> tf difference /shelveset:PeerCodeReview2