Mengatasi konflik Kontrol Versi Team Foundation

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

Visual Studio 2019 | Visual Studio 2022

Keuntungan menggunakan Team Foundation Version Control (TFVC) untuk mengelola file Anda adalah bahwa beberapa orang dapat bekerja secara bersamaan pada file. Salah satu kelemahannya adalah terkadang Anda harus mengatasi konflik sebelum bisa mendapatkan, check in, membatalkan, menggabungkan, atau mengembalikan file Anda.

Meskipun dapat membuat frustrasi menghadapi konflik, sistem menyediakan informasi dan alat untuk membantu Anda memahami dan menyelesaikan konflik.

Anda juga dapat mengatasi konflik dari baris perintah dengan menggunakan perintah Atasi.

Tip

Jika tim Anda perlu berkolaborasi untuk menyelesaikan sejumlah besar konflik, misalnya setelah operasi penggabungan di basis kode besar, ruang kerja publik di komputer dev bersama mungkin membantu. Untuk informasi selengkapnya, lihat Membuat dan bekerja dengan ruang kerja.

Mengatasi konflik

Anda dapat menggunakan jendela Visual Studio Resolve Conflicts untuk mengatasi konflik yang memblokir Anda. Untuk membuka jendela, pilih Tindakan>Mengatasi konflik di halaman Perubahan Tertunda dari Team Explorer.

Cuplikan layar menggunakan jendela Atasi Konflik untuk mengatasi konflik.

Secara default, jendela hanya memperlihatkan konflik yang disebabkan oleh operasi terbaru yang Anda coba. Saat jendela dalam status ini, pesan muncul yang dimulai: Filter jalur diterapkan. Untuk memperlihatkan semua konflik di ruang kerja Anda, pilih Dapatkan Semua Konflik. Pesan yang dimulai dengan: <Konflik N> muncul.

Jika banyak waktu berlalu sejak Anda membuat perubahan pada file di ruang kerja Anda, konflik baru mungkin telah terjadi. Untuk merefresh jendela Atasi Konflik , pilih Refresh.

Cuplikan layar yang memperlihatkan jendela Atasi Konflik.

Setiap konflik berisi informasi dan terkadang tautan yang mungkin membantu Anda mengatasinya. Untuk mendapatkan informasi selengkapnya, Anda bisa memilih konflik dan memilih salah satu opsi berikut:

  • Ikon riwayat.Riwayat untuk melihat riwayat file. Jika operasi yang menyebabkan konflik adalah penggabungan atau pembatalan, Anda dapat memilih kontrol menu di sebelah kanan Riwayat lalu memilih Riwayat Sumber atau Riwayat Target. Untuk informasi selengkapnya, lihat Mendapatkan riwayat item.

  • Bandingkan ikon.Bandingkan, atau pilih panah dropdown di samping ikon lalu pilih perintah. Jendela Diff terbuka.

  • Ikon Anotasi.Anotasi untuk melihat detail tentang semua perubahan yang dilakukan pada versi terbaru file, termasuk siapa yang membuat setiap perubahan dan kapan mereka membuatnya. Lihat Menampilkan perubahan file menggunakan anotasi.

Selesaikan otomatis semua konflik

Secara default, sistem secara otomatis mencoba Untuk Mengatasi Otomatis Semua konflik kecuali Anda menonaktifkan opsi ini. Untuk menonaktifkan Otomatis Selesaikan Semua, pilih Opsi Alat>. Dalam kotak dialog Opsi, di bawah Server Visual Studio Team Foundation Kontrol>Sumber, batal pilih Upaya untuk menyelesaikan konflik secara otomatis saat dihasilkan.

Anda juga dapat memilih Selesaikan Otomatis Semua secara manual di jendela Atasi Konflik , lalu pilih salah satu opsi berikut:

  • Semua Tipe Konflik jika Anda ingin sistem mencoba menyelesaikan konflik secara otomatis dengan menggunakan semua heuristiknya.

  • Jenis Konflik Tertentu jika Anda ingin sistem mencoba mengatasi konflik, tetapi Anda ingin mengecualikan beberapa heuristik.

    Kotak dialog Pilih Konflik untuk Mengatasi muncul. Centang atau kosongkan opsi yang ingin Anda aktifkan atau nonaktifkan, lalu pilih AutoResolve.

    Sistem mencoba untuk secara otomatis mengatasi konflik yang ditampilkan di jendela Perubahan Tertunda. Konflik apa pun yang tidak dapat diselesaikan sistem di jendela. Anda harus menyelesaikan konflik ini secara manual.

Memahami opsi otomatis

Anda dapat membatasi jenis konflik yang diselesaikan secara otomatis oleh opsi Selesaikan Otomatis Semua . Saat Anda memilih Selesaikan Otomatis Semua lalu pilih Jenis Konflik Tertentu, kotak dialog Pilih Konflik untuk Diatasi muncul.

Cuplikan layar yang memperlihatkan kotak dialog Pilih Konflik untuk Mengatasi.

Penyebab konflik

Contoh

Pilihan kotak centang


Perubahan konten yang tidak bertentangan dilakukan di setiap versi file.

Di versi file di sebelah kiri, nol ditambahkan di awal. Di file di sebelah kanan, tiga ditambahkan di akhir:

Cuplikan layar perubahan konten yang tidak bertentangan.

Konflik dengan perubahan konten apa pun

Perubahan konten dilakukan selama operasi get atau checkin yang unik untuk ruang kerja, atau selama operasi penggabungan atau pembatalan yang unik untuk versi target.

Entri empat dan lima ditambahkan ke ruang kerja atau versi target:

Cuplikan layar perubahan konten yang unik pada ruang kerja atau target.

Konflik dengan perubahan konten yang dibuat hanya di ruang kerja lokal atau cabang target

Perubahan konten dilakukan selama operasi get atau checkin yang unik untuk server, atau selama operasi penggabungan atau pembatalan yang unik untuk versi sumber.

Entri empat dan lima ditambahkan ke server atau versi sumber:

Cuplikan layar perubahan konten yang unik untuk server atau sumber.

Konflik dengan perubahan konten yang dibuat hanya di versi server atau cabang sumber

File diganti namanya pada server selama operasi get atau checkin atau di cabang sumber selama operasi penggabungan atau pembatalan.

Anda memeriksa file yang bernama launch.cs dan mengerjakannya. Selama waktu itu, orang lain memeriksa set perubahan yang memengaruhi file yang sama. Set perubahan tersebut tidak mengubah konten file, tetapi mengubah nama file menjadi start.cs.

Konflik yang disebabkan oleh penggantian nama file di versi server atau cabang sumber

Perubahan konten umum dilakukan yang menghasilkan konten yang identik di setiap versi. Atau, Anda mengubah file, memeriksanya melalui build check-in yang terjaga, dan memilih opsi Pertahankan perubahan saya yang tertunda secara lokal.

Perubahan pada setiap versi menghasilkan konten file yang identik. Perubahannya bisa ke konten dalam file, seperti yang ditunjukkan dalam contoh berikut:

Cuplikan layar yang memperlihatkan perubahan konten yang identik di kedua versi.

Konflik yang disebabkan oleh perubahan identik di server dan ruang kerja

Opsi ini juga menyelesaikan konflik yang disebabkan oleh semua operasi lain, misalnya, mengganti nama, menghapus, membatalkan penghapusan, dan cabang, yang mengakibatkan file yang identik.

Tip

Jika Anda memilih kotak centang ini, saat Melanjutkan, sistem menyelesaikan perubahan ini dengan mengunduh versi server ke ruang kerja Anda.

Peringkas Otomatis konflik terpilih

Untuk mencoba mengatasi konflik yang dipilih dengan menggunakan semua opsi automerge sebelumnya, pilih satu atau beberapa konflik lalu pilih Merge Otomatis.

Tip

Anda dapat menekan dan menahan tombol Ctrl atau Shift untuk memilih beberapa konflik.

Catatan

Jika AutoMerge dinonaktifkan, Anda harus menyelesaikan konflik secara manual.

Mengatasi konflik terpilih secara manual

Jika sistem tidak dapat menyelesaikan konflik secara otomatis, atau jika Anda ingin memastikan bahwa Anda memahami apa yang berubah, Anda harus menyelesaikan konflik secara manual. Dalam setiap konflik, sistem menampilkan tindakan yang dapat Anda ambil untuk mengatasi konflik. Tindakan yang ditampilkan bergantung pada jenis konflik dan operasi yang menyebabkan konflik.

Menggunakan jendela Gabungkan

Saat perubahan konten yang berkonflik menyebabkan konflik, Anda dapat memilih Gabungkan Perubahan di Alat Penggabungan. Jendela Gabungkan muncul.

Cuplikan layar yang memperlihatkan Gabungkan perubahan di alat penggabungan.

Di jendela Gabungkan , Anda dapat:

  • Pilih tata letak jendela: Tampilan Vertikal, Tampilan Horizontal, atau Tampilan Campuran.
  • Navigasikan di antara perbedaan dan konflik.
  • Pilih item dari versi kiri dan kanan file untuk menyertakannya dalam hasil.
  • Ketik lebih banyak konten ke dalam file di panel Hasil .
  • Lihat riwayat file. Untuk informasi selengkapnya, lihat Mendapatkan riwayat item.
  • Bandingkan versi file.
  • Anotasi file untuk melihat siapa yang mengubah apa. Untuk informasi selengkapnya, lihat Menampilkan perubahan file dengan menggunakan anotasi.

Saat Anda puas dengan konten panel Hasil, pilih Terima Gabungkan.

Hasil penyelesaian konflik muncul di panel Hasil .