Bagikan melalui


Perintah perbedaan

Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Perintah Team Foundation Version Control (TFVC) difference membandingkan, dan jika memungkinkan menampilkan, perbedaan antara dua file, file dalam dua folder, atau shelveset dan file lokal atau server.

Prasyarat

Untuk menggunakan difference perintah, Anda harus memiliki izin Baca untuk semua item yang ditentukan yang diatur ke Izinkan. Untuk informasi selengkapnya, lihat Izin TFVC default.

Sintaks

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

Parameter

Argumen

Argumen

Keterangan

<itemspec>

Harus diisi. Menentukan item yang akan dibandingkan. Jika tidak ada versi atau jalur yang ditentukan, versi ruang kerja saat ini diasumsikan. Menerima jalur server lokal dan Azure DevOps.

Untuk informasi selengkapnya tentang cara TFVC mengurai itemspec untuk menentukan item mana yang berada dalam cakupan, lihat Menggunakan perintah kontrol versi Team Foundation.

Perintah difference tidak mendukung karakter kartubebas.

Parameter ini tidak dapat dikombinasikan dengan /shelveset opsi .

<itemspec2>

Opsional. Item yang itemspec akan dibandingkan. Jika Anda tidak menyediakan yang kedua itemspec, versi server Azure DevOps terbaru dari item digunakan.

<filetype>

Menyediakan nilai untuk opsi tersebut /type . Anda dapat menentukan binary atau text dan nomor codepage atau nama yang mudah diingat untuk halaman kode.

<format>

Digunakan dengan /format opsi untuk menentukan format output dari salah satu jenis berikut:

  • Visual
  • Brief
  • Context
  • RCS
  • SS
  • SS_SideBySide
  • SS_Unix
  • Unified
  • Unix

Format output ini dijelaskan di bagian Keterangan .

<versionspec>

Nilai yang disediakan pengguna untuk opsi tersebut /version . Untuk informasi selengkapnya tentang cara TFVC mengurai spesifikasi versi untuk menentukan item mana yang berada dalam cakupannya, lihat Menggunakan perintah kontrol versi Team Foundation.

<shelvesetowner>

Mengidentifikasi pemilik shelveset berdasarkan nama pengguna. Jika nilai untuk parameter ini tidak disediakan, pengguna saat ini diasumsikan.

<shelvesetname>

Menentukan nama shelveset. Anda dapat membuat lebih dari satu shelveset dengan nama yang sama di server yang menjalankan TFVC selama pengguna yang berbeda memiliki setiap shelveset.

<shelveset_itemspec>

Menentukan nama folder atau file di shelveset untuk dibandingkan dengan versi shelveset dasar.

<username>

Menyediakan nilai untuk /login opsi . Anda dapat menentukan nilai nama pengguna sebagai DOMAIN\username atau username.

Opsi

Opsi

Keterangan

/type

Mengambil alih pengodean yang terdeteksi dan menggunakan pengodean yang ditentukan untuk menyajikan file ke mesin yang berbeda.

/version

Menentukan versi file atau folder yang akan dibandingkan. Secara default, TFVC menggunakan versi ruang kerja jika Anda tidak menyediakan versionspec.

Alih-alih menggunakan /version bendera, Anda dapat menentukan versi dengan menambahkan titik koma dan penentu versi ke akhir setiap nama file.

/format

Menentukan format output yang ditentukan oleh format argumen .

/ignorespace

Tidak menyoroti perbedaan spasi kosong antara file yang dibandingkan.

/ignoreeol

Mengabaikan perbedaan antara karakter baris baru dalam dua file atau versi file. /ignoreeol bekerja secara berbeda dari ignorespace, yang memperlakukan delapan spasi yang identik dengan satu spasi. Namun, jika Anda menggunakan /ignoreeol opsi dan File A memiliki dua karakter baris baru antara area teks yang tidak berubah, dan File B memiliki satu, hasilnya ditampilkan sebagai perbedaan. Jika kedua file hanya memiliki satu baris baru, tetapi File A menggunakan \r\n sebagai baris baru dan File B menggunakan \n, /ignoreeol opsi akan mengabaikannya sebagai perbedaan.

/ignorecase

Tidak menyoroti perbedaan dalam huruf casing antara file yang dibandingkan.

/recursive

Membandingkan perbedaan antara folder saat ini dan semua subfoldernya.

/options

Menentukan string opsi untuk alat yang akan dipanggil oleh difference. Untuk informasi selengkapnya, lihat Mengaitkan jenis file dengan alat perbedaan dan Mengaitkan jenis file dengan alat penggabungan.

/shelveset

Menentukan shelveset untuk dibandingkan dengan versi server Azure DevOps yang menjadi dasar shelveset.

Opsi ini tidak dapat dikombinasikan dengan itemspec argumen. Untuk membandingkan item shelveset individual, Anda dapat menyediakan shelveset_itemspec.

/noprompt

Menyembunyikan kotak dialog apa pun yang akan ditampilkan selama penyelesaian operasi ini.

/configure

Memanggil kotak dialog Konfigurasi Alat Pengguna dari antarmuka pengguna Visual Studio. Untuk informasi selengkapnya, lihat Mengaitkan jenis file dengan alat perbedaan.

/login

Menentukan nama pengguna dan kata sandi untuk mengautentikasi pengguna dengan TFVC.

Keterangan

Catatan

Anda dapat mengetik tf diff atau tf difference pada baris perintah untuk menjalankan perintah ini.

Anda dapat menggunakan perintah untuk membandingkan difference dan jika memungkinkan perbedaan tampilan antara:

  • Dua file yang berbeda atau dua versi file yang sama.

  • Satu atau beberapa item dalam folder.

  • Satu, beberapa, atau semua item di shelveset di server Azure DevOps.

Anda dapat menggunakan difference perintah untuk membandingkan file versi dan non-versi.

TFVC mengategorikan semua file menurut jenis. File teks dapat digabungkan dan dibandingkan, berdampingan dan berbaris demi baris, selama kedua file memiliki pengodean yang sama. Jika Anda ingin membandingkan dua file yang pengodeannya tidak sama, Anda dapat menutupi sementara atau menimpa properti pengodean untuk file dengan menggunakan /type opsi .

File biner dapat dibandingkan tetapi tidak dapat digabungkan. Saat Anda meneruskan satu atau beberapa file biner ke difference perintah, TFVC menunjukkan apakah perbedaan ada antara file tersebut dan item yang sedang dibandingkan. Untuk informasi selengkapnya tentang bagaimana TFVC membedakan antara dan memperlakukan file dari berbagai jenis, lihat Mengelola jenis file.

Jika Anda menentukan dua nama file, dua file tersebut akan dibandingkan. Alih-alih menggunakan bendera /version , Anda dapat menentukan versi dengan menambahkan titik koma dan penentu versi ke akhir setiap nama file.

Jika Anda hanya meneruskan satu itemspec ke perintah perbedaan:

  • Jika Anda tidak menyediakan versionspec, versi ruang kerja item Anda saat ini dibandingkan dengan versi ruang kerja dasar, secara default. Misalnya, membandingkan versi header.h saat ini dengan versi yang menjadi dasar header.h. tf difference header.h

  • Jika Anda menyertakan versionspec dalam itemspec, seperti tf difference header.h;LBeta1, TFVC membandingkan versi tersebut dengan versi ruang kerja Anda saat ini pada disk.

  • Jika Anda menentukan rentang versi seperti /version:C1~C4, versi file di dua titik akhir rentang dibandingkan.

Untuk informasi selengkapnya tentang cara menggunakan tf utilitas baris perintah, lihat Menggunakan perintah kontrol versi Team Foundation.

Jenis format output

Parameter format , yang digunakan dengan /format opsi , menentukan banyak format output yang berbeda. Jenis output berikut tersedia:

  • Visual jenis format membuka aplikasi perbedaan eksternal. Secara default, diffmerge.exe diluncurkan.

  • Brief format mencetak apakah file yang dibandingkan berbeda.

  • Context format menyediakan baris konteks untuk perbedaan dalam file. Format ini berasal dari format output berbasis diff -c UNIX.

  • RCS formatnya mirip /format:unixdengan , kecuali baris konteks tidak disediakan. Tidak ada penyerahan khusus untuk akhir penanda baris yang hilang di akhir file yang disediakan.

  • SSadalah format output perbedaan default untuk Sumber Visual Brankas. Untuk informasi selengkapnya, lihat Diff (baris perintah).

  • SS_SideBySideadalah format output berdampingan default untuk Visual Source Brankas.

  • SS_Unix mirip /format:unix dengan format output, tetapi /format:ss_unix menyertakan baris konteks dan /format:unix tidak.

  • Unified format berasal dari format output berbasis diff -u UNIX. /format:context mengulangi baris konteks yang identik antara string perbedaan, tetapi /format:unified tidak.

    Unified format menghasilkan baris unified difference string (@@ ... @@) baru hanya ketika jarak ke string perbedaan berikutnya lebih besar dari jumlah baris konteks.

  • Unix jenis output berasal dari format output perintah berbasis diff UNIX.

    Unix Format output dibangun dengan cara berikut:

    <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
    

Contoh

Contoh berikut menampilkan perbedaan antara versi lokal 314.cs dan versi ruang kerja 314.cs yang merupakan versi file yang dicek keluar dari server Azure DevOps.

c:\projects>tf difference 314.cs

Contoh berikut menampilkan semua file yang telah diubah di folder src , tetapi tidak menampilkan file yang telah diubah dalam subfolder src.

c:\projects>tf difference src /format:visual

Contoh berikut menampilkan perbedaan antara set perubahan 3 dan set perubahan 8 dari 1254.cs.

c:\projects>tf difference /version:C3~C8 1254.cs

Contoh berikut menampilkan perbedaan antara versi 314.cs milik label release dan versi milik changeset 3200.

c:\projects>tf difference 314.cs;Lrelease 314.cs;C3200

-atau-

c:\projects>tf difference 314.cs;Lrelease~C3200

Contoh berikut menampilkan perbedaan antara versi e271.cs tempat pengguna bernama Pat dirak di shelveset PeerCodeReview8 dan versi shelveset dasar tempat pengguna mendasarkan perubahannya. Output juga menunjukkan jenis perubahan yang tertunda e271.cs saat pengguna dirak.

c:\projects> tf difference /shelveset:PeerCodeReview8;Pat e271.cs

Contoh berikut menampilkan perbedaan antara semua file di PeerCodeReview2 shelveset dan versi shelveset dasar file tersebut.

c:\projects> tf difference /shelveset:PeerCodeReview2