github/gitignore · Global/macOS.gitignore
Penjelasan template .gitignore macOS
Menjelaskan mengapa macOS.gitignore mengabaikan .DS_Store, resource fork ._, file Icon, serta folder Spotlight, Time Machine, dan tempat sampah, dan cara menaruhnya di gitignore global.
macOS.gitignore memblokir file metadata yang dibuat diam-diam oleh Finder dan sistem file macOS. Karena tidak berkaitan dengan isi proyek, template ini sebenarnya disarankan untuk ditaruh di gitignore global pribadi (core.excludesFile), bukan di repositori.
Kenyataannya, tidak semua anggota tim mengatur konfigurasi global, sehingga insiden .DS_Store ter-commit sering terjadi. Karena itu banyak tim juga memasukkannya ke .gitignore proyek.
Penjelasan per aturan
| Pola | Apa yang diabaikan dan mengapa |
|---|---|
.DS_Store.localized | Metadata Finder.DS_Store adalah file pengaturan tampilan (posisi ikon, pengurutan) yang dibuat Finder di setiap folder. Muncul hanya dengan membuka folder, dan berisi daftar nama file sehingga bisa membocorkan informasi tanpa disengaja. |
._*.AppleDouble.LSOverride | Resource fork (AppleDouble)File pasangan ._namafile yang dibuat untuk menyimpan atribut tambahan saat file disalin ke volume selain HFS+ dan APFS (FAT, berbagi jaringan). |
.VolumeIcon.icns | Ikon kustomFile ikon volume. Ikon kustom folder disimpan sebagai file Icon yang namanya diakhiri karakter carriage return (CR), dan template menangkapnya dengan pola kurung siku berbentuk Icon[\r]. |
.Spotlight-V100.fseventsd.Trashes.TemporaryItems.DocumentRevisions-V100 | Indeks sistem dan tempat sampahIndeks Spotlight, log peristiwa sistem file, tempat sampah, dan penyimpanan versi dokumen yang muncul di root disk eksternal atau volume. |
.com.apple.timemachine.donotpresent.com.apple.timemachine.supportedBackups.backupdb.MobileBackups | Time MachineFile penanda dan folder cadangan yang muncul di disk cadangan Time Machine. |
.AppleDB.AppleDesktopNetwork Trash FolderTemporary Items.apdisk | Folder berbagi AFPBasis data dan folder yang dibuat server file AFP (Apple Filing Protocol) di volume bersama. Meskipun namanya mengandung spasi, pola gitignore cukup ditulis apa adanya. |
__MACOSX/ | Produk sampingan ekstraksiFolder resource fork yang muncul saat zip buatan macOS diekstrak dengan alat lain. |
Hal yang perlu diperhatikan dalam praktik
- Pengaturan global: jalankan
git config --global core.excludesFile ~/.gitignore_globallalu masukkan template ini ke file tersebut. Jika tidak diatur, path default~/.config/git/ignoreyang dipakai. .DS_Storeyang sudah di-commit dihapus dengangit rm --cached. Di tab berhenti melacak, mode “Semua file terlacak yang cocok dengan .gitignore” memprosesnya sekaligus.- Aturan
._*tidak memblokir semua file yang diawali garis bawah. Aturan ini hanya berlaku untuk nama yang diawali._(titik + garis bawah).
Template asli
macOS.gitignore
# General.DS_Store.localized__MACOSX/.AppleDouble.LSOverrideIcon[ ]# Resource forks._*# Files and directories that might appear in the root of a volume.DocumentRevisions-V100.fseventsd.Spotlight-V100.TemporaryItems.Trashes.VolumeIcon.icns.com.apple.timemachine.donotpresent.com.apple.timemachine.supported.PKInstallSandboxManager.PKInstallSandboxManager-SystemSoftware.hotfiles.btree.vol.file.disk_label*lost+found.HFS+ Private Directory Data[ ]# Directories potentially created on remote AFP share.AppleDB.AppleDesktopNetwork Trash FolderTemporary Items.apdisk# Mac OS 6 to 9Desktop DBDesktop DFTheFindByContentFolderTheVolumeSettingsFolder.FBCIndex.FBCSemaphoreFile.FBCLockFolder# Quota system.quota.group.quota.user.quota.ops.group.quota.ops.user# TimeMachineBackups.backupdb.MobileBackups.MobileBackups.trashMobileBackups.trashtmbootpicker.efi
Sumber template: github/gitignore/Global/macOS.gitignore @356fd7b (2026-09-11) · CC0-1.0