Perintah Shelve (Kontrol Versi Team Foundation)

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

Visual Studio 2019 | Visual Studio 2022

Perintah Team Foundation Version Control (TFVC) shelve menyimpan serangkaian perubahan yang tertunda, bersama dengan catatan check-in yang tertunda, komentar, dan daftar item kerja terkait di server Azure DevOps tanpa benar-benar memeriksanya.

Prasyarat

Jika Anda ingin menggunakan shelve perintah untuk menghapus shelveset, Anda harus menjadi pemilik shelveset, atau izin Administer shelved changes Anda harus diatur ke Izinkan. Untuk informasi selengkapnya, lihat Izin TFVC default.

Sintaks

tf shelve  [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)] 
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

Parameter

Argumen

Argumen Keterangan
<commentfile> Menentukan jalur sistem file file tempat komentar untuk shelveset harus dibaca.
<comment> Menentukan komentar untuk shelveset.
<itemspec> Mengidentifikasi file atau folder yang akan dirak. Secara default, semua perubahan yang tertunda di ruang kerja saat ini di-shelved jika parameter ini tidak ditentukan. Untuk informasi selengkapnya tentang cara Team Foundation mengurai itemspec untuk menentukan item mana yang berada dalam cakupan, lihat Menggunakan opsi untuk mengubah cara fungsi perintah.
<shelvesetname> Menentukan nama tempat shelveset dapat diambil dari server Azure DevOps. Anda dapat menentukan kombinasi shelvesetname dan owner, yang ada tetapi hanya jika /replace juga ditentukan.

Anda harus memberikan nilai untuk parameter ini.
<owner> Mengidentifikasi pemilik shelveset saat ini atau yang dimaksudkan berdasarkan nama pengguna. Secara default, pengguna saat ini diberi kepemilikan shelveset jika tidak ditentukan.
<username> Menyediakan nilai untuk /login opsi . Anda dapat menentukan nilai nama pengguna sebagai DOMAIN\username atau username.
<TeamProjectCollectionUrl> URL koleksi proyek yang berisi file atau folder yang ingin Anda rak, misalnya http://myserver:8080/tfs/DefaultCollection/.

Opsi

Opsi Keterangan
/new Status yang dipilih dari setiap perubahan yang tertunda seperti yang ditunjukkan dalam kotak dialog Visual Studio Check In , komentar, item kerja terkait, catatan check-in, dan alasan penimpaan kebijakan check-in, disimpan di komputer dev Anda sebagai perubahan yang tertunda hingga Anda memeriksanya. Opsi /new menghapus metadata check-in ini sebelum Anda check-in.
/move Menghapus perubahan tertunda dari ruang kerja setelah operasi rak berhasil.
/replace Mengganti shelveset yang ada dengan nama dan pemilik yang sama dengan yang Anda tentukan.
/delete Menghapus shelveset yang ditentukan. Hanya opsi yang /server dapat dikombinasikan dengan opsi ini. Jika Anda tidak menyertakan opsi , /noprompt pesan konfirmasi muncul saat /delete opsi ditentukan.
/comment Menambahkan komentar tertentu yang menjelaskan perubahan yang dirak.
/recursive Rak semua item di folder shelveset yang ditentukan, subfoldernya, dan semua item di itemspec dalamnya jika yang Anda sediakan adalah folder.
/noprompt Menekan setiap permintaan untuk input dari Anda.
/validate Opsi ini memilih kotak centang Evaluasi kebijakan dan check-in sebelum rak di kotak dialog Shelve - File Sumber saat terbuka. Saat kotak centang validasi dipilih, dialog mengevaluasi kebijakan check-in dan memverifikasi bahwa memerlukan catatan check-in telah diisi. Opsi ini berguna ketika perubahan diserahkan untuk ditinjau dan diperiksa oleh orang lain. Tidak valid ketika dikombinasikan dengan /noprompt.
/login Menentukan nama pengguna dan kata sandi untuk mengautentikasi pengguna dengan Azure DevOps Server.
/collection Menentukan koleksi proyek.

Keterangan

shelve Perintah tf utilitas baris perintah mencadangkan perubahan yang tertunda, daftar item kerja terkait, catatan check-in yang sedang berlangsung, dan komentar di shelveset di server Azure DevOps. Shelveset sama seperti set perubahan yang tidak diterapkan ke server. Seperti set perubahan, shelveset dapat diambil dari server ke ruang kerja lokal oleh pengguna mana pun yang memiliki izin yang memadai.

Rak adalah alternatif untuk memeriksa perubahan tertunda yang belum cukup diuji. Gunakan rak saat Anda ingin mengganggu pekerjaan Anda untuk:

  • Bagikan sekumpulan file kerja lokal dengan pengembang atau penguji lain tanpa memeriksa perubahan Anda ke server kontrol versi.

  • Sisihkan sekelompok perubahan yang tertunda untuk sementara tanpa memeriksanya, sehingga Anda dapat mengerjakan masalah prioritas yang lebih tinggi. Setelah menyelesaikan pekerjaan pada tugas prioritas tinggi, Anda dapat memulihkan perubahan yang dirak dengan menggunakan perintah Unshelve.

Jika Anda menyertakan /move opsi , shelve perintah mengembalikan setiap revisi file yang dirak ke versi ruang kerja dasar yang merupakan versi terakhir yang diambil dari server ke ruang kerja saat ini. Secara khusus, untuk semua item yang Anda rak, /move opsi:

  • Undo Menggunakan untuk mengurungkan perubahan yang dirak. File yang sedang menunggu penambahan dihapus dari ruang kerja.

  • Mengambil versi ruang kerja dasar dari semua file yang ada edisi tertunda dari server ke ruang kerja saat ini.

  • Menandai semua item di ruang kerja saat ini sebagai baca-saja.

Jika Anda menyertakan /delete opsi , TFVC secara permanen menghapus shelveset yang ditentukan dari server Azure DevOps.

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

Contoh

Contoh berikut membuat shelveset baru di server Azure DevOps yang disebut Reflector_BuddyTest, menetapkan kepemilikan kepada pengguna Pat, mengembalikan semua item di ruang kerja saat ini ke versi terbaru yang diunduh selama operasi terakhir get , dan menetapkan status baca-saja:

c:\projects> tf shelve Reflector_BuddyTest;Pat /move

Contoh berikut menghapus shelveset new-feature yang ada dari server, membuat shelveset baru dengan nama tersebut, dan mempertahankan semua perubahan yang tertunda di ruang kerja saat ini:

c:\projects> tf shelve new-feature /replace

Contoh berikut membuat shelveset bernama HelloWorld_TestMe yang mencakup semua perubahan tertunda ke semua file .cs di folder kerja C:\projects dan subfoldernya:

c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive

Contoh berikut menghapus shelveset HelloWorld_24 :

c:\projects> tf shelve HelloWorld_24 /delete