Bagaimana Anda menampilkan file yang tidak dilacak yang tidak ada di .gitignore


167

Saya menggunakan git status -uuntuk menampilkan file yang tidak dilacak. Dan di terminal, saya melihat banyak file yang tidak terlacak yang perlu saya lacak seperti tes unit, dokumentasi pribadi, dll. Saya telah memasukkannya .gitignore, tetapi tampaknya git statusmasih menunjukkannya.

Bagaimana Anda hanya menampilkan file yang tidak dilacak yang tidak ada di .gitignore.


11
jika file yang tidak dilacak ditampilkan dalam status git, mereka tidak diabaikan oleh .gitignore dengan benar. dapatkah Anda menunjukkan kepada Anda struktur direktori yang berfungsi dan konten .gitignore?
maks

7
Setuju dengan @max, itu harus bekerja. Berikut dugaan liar: jika Anda menggunakan Windows, ketahuilah bahwa .gitignore, tidak seperti Windows, peka huruf besar-kecil. Jadi jika Anda mengabaikan * .txt dan ada Test.TXT pada disk, itu tidak akan diabaikan.
Joe White

Jawaban:


268

Anda dapat secara eksplisit mendaftar apa yang sedang dilacak dan dilacak sebagai berikut untuk melihat apakah Git melihat dan menghormati Anda .gitignore. Jika Anda memposting .gitignorekonten Anda , git statusoutput, dan diratau lskami dapat membantu Anda dengan lebih baik.

Daftar file yang diabaikan

$ git ls-files . --ignored --exclude-standard --others

Daftar file yang tidak terlacak

$ git ls-files . --exclude-standard --others

3
Jika Anda melihat file yang menurut Anda tidak ada di .gitignore Anda, mungkin ada file lain yang bersembunyi di proyek Anda. Cari tahu dengan `find. -nama .gitignore`.
jpadvo

@ matthew-mccullough Jawaban yang bagus! Saya akan menambahkan beberapa alias untuk ini, terima kasih! @ jpadvo Bisakah Anda memberikan contoh penggunaan untuk findmetode?
lacostenycoder

Jika Anda ingin daftar pendek, katakan Anda mengabaikan node_modules dan tidak ingin melihat seluruh pohon, tambahkan --directoryjadi hanya folder tingkat atas yang diabaikan akan dicetak (ini lebih dekat dengan status git).
Henry Blyth

2
Untuk memperjelasnya, git ls-files --others --exclude-standard --ignoreddaftarkan file yang git ls-files --others --exclude-standardtidak terpantau yang tidak terpantau , dan yang tidak terpecah tidak diabaikan. Lebih lanjut di sini .
x-yuri

1
Perhatikan bahwa secara default git ls-files --otherstidak mencantumkan direktori kosong. Untuk membuat daftar direktori kosong tambahkan --directoryopsi. Ini tidak jelas dari halaman manual tetapi dapat disimpulkan. --directory: Jika seluruh direktori diklasifikasikan sebagai "lain", tampilkan hanya namanya (dengan garis miring) dan bukan seluruh isinya. . --no-empty-directory: Jangan daftar direktori kosong. Tidak memiliki efek tanpa --direktori.
catanman


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.