Mengabaikan File Dan Direktori

Gambar 4.33. Menu konteks Explorer untuk file tidak berversi

Menu konteks Explorer untuk file tidak berversi


In most projects you will have files and folders that should not be subject to version control. These might include files created by the compiler, *.obj, *.lst, maybe an output folder used to store the executable. Whenever you commit changes, TortoiseSVN shows your unversioned files, which fills up the file list in the commit dialog. Of course you can turn off this display, but then you might forget to add a new source file.

Cara terbaik untuk menghindari masalah ini adalah menambah file ke daftar abaikan proyek. Cara itu mereka tidak akan pernah ditampilkan dalam dialog komit, tetapi file sumber tidak berversi aslinya masih akan ditandai.

If you right click on a single unversioned file, and select the command TortoiseSVNAdd to Ignore List from the context menu, a submenu appears allowing you to select just that file, or all files with the same extension. Both submenus also have a (recursively) equivalent. If you select multiple files, there is no submenu and you can only add those specific files/folders.

If you choose the (recursively) version of the ignore context menu, the item will be ignored not just for the selected folder but all subfolders as well. However this requires SVN clients version 1.8 or higher.

Jika Anda ingin menghapus satu atau lebih item dari daftar abaikan, klik kanan pada item-item itu dan pilih TortoiseSVNHapus dari Daftar Abaikan Anda juga bisa mengakses properti direktori svn:ignore secara langsung. Itu membolehkan Anda untuk menetapkan pola lebih umum menggunakan nama file globbing, dijelaskan dalam seksi berikut. Baca bagian bernama “Seting Proyek” untuk informasi lebih jauh pada menyeting properti secara langsung. Perhatikan bahwa setiap pola abaikan harus diletakkan di baris yang terpisah. Memisahkan mereka dengan spasi tidak bekerja.

Daftar Abaikan global

Cara lain untuk mengabaikan file adalah menambahkannya ke daftar abaikan global. Perbedaan besar disini adalah bahwa daftar abaikan global adalah properti klien. Ia berlaku untuk semua proyek Subversion, tapi hanya pada klien PC. Secara umum lebih baik untuk menggunakan properti svn:ignore bila mungkin, karena ia bisa diterapkan ke area proyek tertentu, dan bekerja bagi setiap orang yang melakukan check out proyek. Baca bagian bernama “Seting Umum” untuk informasi lengkapnya.

Mengabaikan Item Berversi

File dan folder berversi tidak pernah diabaikan - itu adalah fitur dari Subversion. Jika Anda memversi file karena kesalahan, baca bagian bernama “Abaikan file yang sudah diversi” untuk instruksi bagaimana untuk Tidak memversi it.

Pencocokan Pola dalam Daftar Abaikan

Pola abaikan Subversion menggunakan globbing nama file, satu teknik yang asalnya digunakan dalam Unix untuk menetapkan file menggunakan meta-karakter sebagai wildcard. Karakter berikut mempunyai arti khusus:

*

Sama pada setiap karakter string, termasuk string kosong (tidak ada karakter).

?

Sama pada setiap karakter tunggal.

[...]

Salam pada salah satu karakter yang ditutupi dalam kurung kotak. Didalam kurung, pasangan karakter dipisahkan oleh - sama pada setiap karakter secara leksikal diantara keduanya. Sebagai contoh [AGm-p] sama dengan salah satu dari A, G, m, n, o atau p.

Pattern matching is case sensitive, which can cause problems on Windows. You can force case insensitivity the hard way by pairing characters, e.g. to ignore *.tmp regardless of case, you could use a pattern like *.[Tt][Mm][Pp].

Jika Anda ingin definisi resmi untuk globbing, Anda bisa menemukannya dalam spesifikasi IEEE untuk bahasa perintah shell Pattern Matching Notation.

No Paths in Global Ignore List

You should not include path information in your pattern. The pattern matching is intended to be used against plain file names and folder names. If you want to ignore all CVS folders, just add CVS to the ignore list. There is no need to specify CVS */CVS as you did in earlier versions. If you want to ignore all tmp folders when they exist within a prog folder but not within a doc folder you should use the svn:ignore property instead. There is no reliable way to achieve this using global ignore patterns.