Jawaban:
Untuk detail tambahan, lihat SVNBook: "Status file copy dan direktori yang berfungsi" .
Status umum:
U : File yang berfungsi telah diperbarui
G : Perubahan pada repo secara otomatis digabungkan ke dalam copy pekerjaan
M : Copy pekerjaan dimodifikasi
C : File ini bertentangan dengan versi di repo
? : File ini tidak di bawah kontrol versi
! : File ini di bawah kontrol versi tetapi tidak ada atau tidak lengkap
A : File ini akan ditambahkan ke kontrol versi (setelah komit)
A + : File ini akan dipindahkan (setelah komit)
D : File ini akan dihapus (setelah komit)
S : Ini menandakan bahwa file atau direktori telah dipindahkan dari jalur sisa dari copy pekerjaan (menggunakan svn switch) ke cabang
I : Diabaikan
X : Definisi eksternal
~ : Ketik berubah
R : Item telah diganti dalam copy pekerjaan Anda. Ini berarti file dijadwalkan untuk dihapus, dan kemudian file baru dengan nama yang sama dijadwalkan untuk ditambahkan sebagai gantinya.
L : Item terkunci
E : Item ada, karena akan dibuat, oleh pembaruan svn.
E
? Semua dokumentasi mengatakan "Ada", yang tidak membantu.
Perhatikan juga bahwa kode hasil di kolom kedua merujuk ke properti file. Sebagai contoh:
U filename.1
U filename.2
UU filename.3
filename.1: file diperbarui
filename.2: properti atau properti pada file (seperti svn: kata kunci) diperbarui
filename.3: file dan propertinya diperbarui
Anda selalu bisa mendapatkan daftar dengan menjalankan:
svn status --help
Saya ingin mengatakan sesuatu tentang status "G",
G: Perubahan pada repo secara otomatis digabungkan ke dalam copy pekerjaan
Saya pikir definisi di atas tidak jelas, dapat menimbulkan sedikit kebingungan, karena semua file secara otomatis digabungkan ke dalam copy pekerjaan, yang benar seharusnya:
U = item (U) yang ditambahkan ke versi repositori
G = perubahan lokal item dig (G) dengan repositori
C = perubahan lokal item (C) onflicted with repository
D = item (D) dihapus dari copy pekerjaan
A = item (A) ditabuh untuk copy pekerjaan
Saya biasanya menggunakan svn melalui gui, baik IDE saya atau klien. Karena itu, saya tidak pernah dapat mengingat kode ketika saya harus beralih ke baris perintah.
Saya menemukan lembar contekan ini sangat membantu: Subversion Cheat Sheet
$ svn status
L index.html
Output dari perintah dibagi menjadi enam kolom, tetapi itu tidak jelas karena kadang-kadang kolom kosong. Mungkin akan lebih masuk akal untuk menunjukkan kolom kosong dengan tanda hubung, caranya ls -l
, bukan apa-apa. Kemudian, misalnya, L index.html
akan terlihat seperti --L--- index.html
, yang membuatnya jelas satu-satunya informasi yang kita miliki adalah di kolom ketiga tentang penguncian. Bagaimanapun, begitu Anda tahu bahwa itu mulai lebih masuk akal.
Kolom pertama menunjukkan bahwa item ditambahkan, dihapus, atau diubah.
Tidak ada modifikasi.
A
Item dijadwalkan untuk Penambahan.
D
Item dijadwalkan untuk Dihapus.
M
Item telah dimodifikasi.
R
Item telah diganti dalam copy pekerjaan Anda. Ini berarti file dijadwalkan untuk dihapus, dan kemudian file baru dengan nama yang sama dijadwalkan untuk ditambahkan sebagai gantinya.
C
Konten (sebagai lawan dari properti) konflik item dengan pembaruan yang diterima dari repositori.
X
Item terkait dengan definisi eksternal.
I
Item diabaikan (misalnya dengan properti svn: diabaikan).
?
Item tidak di bawah kontrol versi.
!
Item hilang (mis. Anda memindahkan atau menghapusnya tanpa menggunakan svn). Ini juga menunjukkan bahwa direktori tidak lengkap (checkout atau pembaruan terputus).
~
Item diversi versi sebagai satu jenis objek (file, direktori, tautan), tetapi telah digantikan oleh berbagai jenis objek.
Kolom kedua memberi tahu status properti file atau direktori.
Tidak ada modifikasi.
M
Properti untuk item ini telah dimodifikasi.
C
Properti untuk item ini bertentangan dengan pembaruan properti yang diterima dari repositori.
Kolom ketiga hanya diisi jika direktori copy pekerjaan dikunci (pembersihan svn biasanya cukup untuk menghapusnya)
Item tidak dikunci.
L
Item terkunci.
Kolom keempat diisi hanya jika item dijadwalkan untuk penambahan-dengan-sejarah.
Tidak ada riwayat yang dijadwalkan dengan komit.
+
Sejarah dijadwalkan dengan komit.
Kolom kelima diisi hanya jika copy pekerjaan item tersebut relatif terhadap induknya
Item adalah anak dari direktori induknya.
S
Item diaktifkan.
Kolom keenam diisi dengan informasi kunci.
Ketika –show-update digunakan, file tidak dikunci. Jika –show-update tidak digunakan, ini hanya berarti bahwa file tersebut tidak dikunci dalam copy pekerjaan ini.
K
File dikunci dalam copy pekerjaan ini.
O
File dikunci oleh pengguna lain atau dalam copy pekerjaan lainnya. Ini hanya muncul ketika –show-update digunakan.
T
File dikunci dalam copy pekerjaan ini, tetapi kunci telah dicuri dan tidak valid. File saat ini terkunci di repositori. Ini hanya muncul ketika –show-update digunakan.-
B
File dikunci dalam copy pekerjaan ini, tetapi kunci telah rusak dan tidak valid. File tidak lagi terkunci. Ini hanya muncul ketika –show-update digunakan.
Informasi yang kedaluwarsa muncul di kolom ketujuh (hanya jika Anda melewati sakelar –show-updates). Ini adalah sesuatu yang orang baru untuk SVN mengharapkan perintah untuk dilakukan, tidak menyadarinya hanya membandingkan keadaan file saat ini dengan informasi apa yang diambil dari server pada pembaruan terakhir.
Item dalam copy pekerjaan Anda mutakhir.
*
Revisi yang lebih baru dari item ada di server.
Lihatlah referensi Buku Subversi: "Status file copy dan direktori yang berfungsi"
Sangat direkomendasikan bagi siapa pun yang melakukan banyak hal dengan SVN.
Setiap kali Anda tidak memiliki akses ke dokumentasi ( SVNBook ), ketik (Linux):
svn help status | grep \'\?\'
svn help status | grep \'\!\'
svn help status | grep \'\YOUR_SYMBOL_HERE\'
atau masukkan fungsi berikut ke file ~ / .bashrc Anda, seperti:
svncode() {
symbol=$1
[ $symbol ] && svn help status | grep \'$(echo $symbol)\' || \
echo "usage: svncode <symbol>"
}