Jawaban:
.gitkeep tidak didokumentasikan, karena itu bukan fitur Git.
Git tidak dapat menambahkan direktori yang benar-benar kosong . Orang-orang yang ingin melacak direktori kosong di Git telah membuat konvensi untuk meletakkan file.gitkeep dalam direktori ini. File itu bisa disebut apa saja; Git tidak memberikan arti khusus pada nama ini.
Ada konvensi yang bersaing untuk menambahkan .gitignorefile ke direktori kosong untuk dilacak, tetapi beberapa orang melihat ini membingungkan karena tujuannya adalah menjaga direktori kosong, bukan mengabaikannya; .gitignorejuga digunakan untuk membuat daftar file yang harus diabaikan oleh Git ketika mencari file yang tidak dilacak.
.gitignoreFile dengan dua baris: *dan !.gitignorelebih dari cukup kejelasan untuk menyampaikan apa yang sedang terjadi. Jika diperlukan elaborasi lebih lanjut, tambahkan komentar ke bagian atas file menggunakan # sintaks.
.keepfile alih-alih .gitkeepmelestarikan folder kosong ini, karena git bukan satu-satunya sistem kontrol sumber yang tidak melacak folder kosong. Lebih detail di sini: github.com/rails/rails/issues/2800
.gitkeephanyalah pengganti. File dummy, jadi Git tidak akan melupakan direktori, karena Git hanya melacak file.
Jika Anda ingin direktori kosong dan memastikannya tetap 'bersih' untuk Git, buatlah yang .gitignoreberisi baris-baris berikut di dalam:
# .gitignore sample
###################
# Ignore all files in this dir...
*
# ... except for this one.
!.gitignore
Jika Anda ingin agar hanya satu jenis file yang dapat dilihat oleh Git, berikut adalah contoh cara memfilter semuanya, kecuali .gitignore dan semua .txtfile:
# .gitignore to keep just .txt files
###################################
# Filter everything...
*
# ... except the .gitignore...
!.gitignore
# ... and all text files.
!*.txt
('#' menunjukkan komentar.)
!di depan .gitignore? Apakah itu untuk menghindari titik?
!meniadakan bagian berikut, seperti biasanya dalam pemrograman.
!.gitignorefile abaikan, git tambahkan file kemudian edit, atau paksakan tambahkan dengan konten yang sesuai ("*" untuk mengabaikan semuanya, atau tidak ada yang memastikan folder itu ada) contoh lebih lanjut .
Since the git ignore file is already in the repo it is not necessary to not-ignore it - it is already tracked.------ Jika tidak, dan Anda tidak melakukan penambahan paksa, Anda mungkin melupakannya. Dalam kasus sepele, tidak ada masalah, tetapi jika itu adalah file yang lebih besar Anda mungkin kesal. Menggunakan !.gitignoremencegah Anda dari menembak diri sendiri di kaki Anda. Saya lebih suka, setelah membakar diri di masa lalu.
.gitignore
adalah file teks yang terdiri dari daftar file dalam direktori Anda yang git akan abaikan atau tidak tambahkan / perbarui dalam repositori.
.gitkeep
Karena Git menghapus atau tidak menambahkan direktori kosong ke repositori, .gitkeep adalah semacam peretasan (saya tidak berpikir itu secara resmi dinamai sebagai bagian dari Git) untuk menyimpan direktori kosong dalam repositori.
Lakukan saja touch /path/to/emptydirectory/.gitkeepuntuk menambahkan file, dan Git sekarang akan dapat mempertahankan direktori ini di repositori.
.gitignoreAnda inginkan, jika Anda tidak ingin menentukan path lengkap ke setiap folder setiap waktu.
.gitkeepfile tetapi tidak akan melacak direktori kosong, Hanya folder yang melacak .gitkeepkeberadaan file. kenapa begitu ?
.gitignores menyelamatkan Anda dari menentukan path lengkap ke setiap folder setiap waktu? Saya pikir saya kehilangan sesuatu yang jelas.
READMEfile di subdirektori yang kosong yang berisi sedikit informasi tentang apa subdirektori yang akan digunakan? Tampaknya membingungkan memiliki file bernama.gitkeepyang sebenarnya bukan bagian dari git.