Pertanyaan Bagaimana cara menghapus file lokal (tidak terlacak) dari pohon kerja Git saat ini?


Bagaimana Anda menghapus file lokal yang tidak terlacak dari pohon kerja Anda saat ini?


5776
2017-09-14 09:06


asal


Jawaban:


Sesuai Dokumentasi Git git bersih

Hapus file yang tidak terlacak dari pohon kerja


Langkah 1 adalah untuk menunjukkan apa yang akan dihapus dengan menggunakan -n pilihan:

git clean -n

Langkah Bersih - hati-hati: ini akan menghapus file:

git clean -f
  • Untuk menghapus direktori, jalankan git clean -f -d atau git clean -fd
  • Untuk menghapus file yang diabaikan, jalankan git clean -f -X atau git clean -fX
  • Untuk menghapus file yang diabaikan dan tidak diabaikan, jalankan git clean -f -x atau git clean -fx

Catatan perbedaan kasus pada X untuk dua perintah terakhir.

Jika clean.requireForce diatur ke "true" (default) dalam konfigurasi Anda, yang perlu ditentukan -f jika tidak, tidak akan terjadi apa-apa.

Sekali lagi lihat git-clean dokumen untuk informasi lebih lanjut.

Pilihan

-f

--memaksa

Jika variabel konfigurasi Git clean.requireForce tidak disetel ke false, git clean akan menolak dijalankan kecuali diberikan -f, -n atau -i.

-x

Jangan gunakan aturan abaikan standar yang dibaca dari .gitignore (per direktori) dan $ GIT_DIR / info / exclude, tetapi tetap gunakan aturan abaikan yang diberikan dengan opsi -e. Ini memungkinkan penghapusan semua file yang tidak terlacak, termasuk membangun produk. Ini dapat digunakan (mungkin bersamaan dengan git reset) untuk membuat direktori kerja yang masih asli untuk menguji build yang bersih.

-X

Hapus hanya file yang diabaikan oleh Git. Ini mungkin berguna untuk membangun kembali semuanya dari awal, tetapi tetap membuat file yang dibuat secara manual.

-n

--keluar

Jangan benar-benar menghapus apa pun, cukup tunjukkan apa yang akan dilakukan.

-d

Hapus direktori yang tidak terlacak selain file yang tidak terlacak. Jika direktori yang tidak ditangani dikelola oleh repositori Git yang berbeda, itu tidak dihapus secara default. Gunakan opsi -f dua kali jika Anda benar-benar ingin menghapus direktori semacam itu.


7589
2018-05-26 20:59



Menggunakan git clean -f -d untuk memastikan itu direktori juga dihapus.

Anda kemudian dapat memeriksa apakah file Anda benar-benar hilang git status.


813
2017-12-30 20:12



Saya terkejut tidak ada yang menyebutkan ini sebelumnya:

git clean -i

Itu singkatan interaktif dan Anda akan mendapatkan gambaran singkat tentang apa yang akan dihapus yang menawarkan Anda kemungkinan untuk menyertakan / mengecualikan file yang terpengaruh. Secara keseluruhan, masih lebih cepat daripada menjalankan kewajiban --dry-run sebelum pembersihan nyata.

Anda harus memasukkan a -d jika Anda juga ingin berhati-hati dengan folder kosong. Pada akhirnya, itu membuat untuk alias yang bagus:

git iclean

Yang sedang berkata, memegang tangan ekstra dari perintah interaktif dapat menjadi melelahkan bagi pengguna yang berpengalaman. Hari-hari ini saya hanya menggunakan yang sudah disebutkan git clean -fd 


396
2017-09-14 09:09



git-clean - Hapus file yang tidak terlacak dari pohon kerja


387
2018-01-25 12:24



Jika direktori tidak terlacak adalah repositori git miliknya sendiri (mis. Submodule), Anda harus menggunakannya -f dua kali:

git clean -d -f -f


199
2018-06-03 12:16



Cara Sederhana untuk menghapus file yang tidak terlacak

Untuk menghapus semua file yang tidak terlacak, yang sederhana   caranya adalah tambahkan semuanya terlebih dahulu dan reset reposeperti di bawah ini

git add --all
git reset --hard HEAD


143
2018-01-11 00:41



saya suka git stash save -u karena Anda dapat membatalkan semuanya git stash pop.

EDIT: Saya juga menemukan cara untuk menampilkan file yang tidak terlacak dalam simpanan (mis. git show stash@{0}^3) https://stackoverflow.com/a/12681856/338986


117
2017-11-25 14:16



Ini yang selalu saya gunakan:

git clean -fdx

Untuk proyek yang sangat besar Anda mungkin ingin menjalankannya beberapa kali.


92
2017-09-14 09:08



bersih git adalah apa yang Anda cari. Ini digunakan untuk menghapus file yang tidak terlacak dari pohon kerja.


83
2017-09-24 06:28



Jika diperlukan untuk menghapus file yang tidak terlacak dari subdirektori tertentu,

git clean -f {dir_path}

Dan cara gabungan untuk menghapus direktori / file yang tidak terpantau dan file yang diabaikan.

git clean -fxd {dir_path}

setelah ini Anda hanya akan mengubah file git status.


71
2018-01-22 06:33