Pertanyaan Apa perbedaan antara .gitignore dan .gitkeep?


Apa perbedaan antara .gitignore dan .gitkeep? Apakah mereka sama dengan nama yang berbeda, atau keduanya berfungsi berbeda? Sepertinya saya tidak dapat menemukan banyak dokumentasi .gitkeep.


1429
2017-08-29 12:11


asal


Jawaban:


.gitkeep tidak didokumentasikan, karena itu bukan fitur Git.

Git tidak dapat menambahkan direktori yang benar-benar kosong. Orang yang ingin melacak direktori kosong di Git telah membuat konvensi meletakkan file yang disebut .gitkeep dalam direktori ini. File itu bisa disebut apa saja; Git tidak memberikan arti khusus untuk nama ini.

Ada konvensi yang bersaing untuk menambahkan .gitignore file ke direktori kosong untuk mendapatkan mereka dilacak, tetapi beberapa orang melihat ini sebagai membingungkan karena tujuannya adalah untuk menjaga direktori kosong, tidak mengabaikannya; .gitignore juga digunakan untuk daftar file yang harus diabaikan oleh Git ketika mencari file yang tidak terlacak.


2609
2017-08-29 12:20



.gitkeep hanyalah sebuah placeholder. File dummy, jadi git tidak akan melupakan direktori, karena git hanya melacak file.


Jika Anda menginginkan dir kosong dan pastikan itu tetap 'bersih' untuk git, buat a .gitignore mengandung baris-baris berikut dalam:

# .gitignore sample 
###################

# ignore all files in this dir...
*

# ... except for this one.
!.gitignore

Jika Anda ingin hanya memiliki satu jenis file yang terlihat oleh git, berikut ini contoh cara memfilter semuanya, kecuali .gitignore dan semua .txt file:

# .gitignore to keep just .txt files
###################################

# filter everything...
*

# ... except the .gitignore...
!.gitignore

# ... and all text files.
!*.txt

('#' menunjukkan komentar.)


220
2017-07-20 13:02



.gitignore

adalah file teks yang terdiri dari daftar file di direktori Anda yang git akan mengabaikan atau tidak menambahkan / memperbarui dalam repositori.

.gitkeep

Karena git menghapus atau tidak menambahkan direktori kosong ke repo. Gitkeep adalah semacam hack (saya tidak berpikir itu secara resmi disebut sebagai bagian dari git) untuk menyimpan direktori kosong di repo.

lakukan saja touch /path/to/emptydirectory/.gitkeep untuk menambahkan file dan git sekarang akan dapat mempertahankan direktori ini di repositori.


98
2017-08-29 12:21