Kali pertama saya menghantar soalan, sistem sudah lama tidak menyemaknya, jadi saya mencarinya.
Sebenarnya saya menemui jawapan daripada stackoverflow malam tadi. Tetapi terima kasih semua.
http://stackoverflow.com/questions/1139762/gitignore-file-not-ignoring
Terdapat juga pilihan untuk menulis semula sejarah jika anda ingin mengubah suai skrip sejumlah besar komit - contohnya, untuk menukar alamat e-mel secara global atau mengalih keluar fail daripada semua komit. Perintah ini adalah cawangan penapis, dan ia akan mengubah suai sejarah anda secara meluas, jadi anda mungkin tidak boleh menggunakannya melainkan projek anda belum lagi terbuka dan tiada orang lain yang sedang mengusahakan komit yang anda ingin ubah suai. Namun, yang ini boleh menjadi sangat berguna. Anda akan mempelajari beberapa kegunaan biasa untuk mendapatkan idea tentang keupayaannya.
Alih keluar fail daripada semua komit
Ini sering berlaku. Sesetengah orang menggunakan git add . Mungkin anda secara tidak sengaja membuat fail yang mengandungi kata laluan dan anda ingin menjadikan projek anda sumber terbuka. cawangan penapis mungkin akan menjadi alat yang anda gunakan untuk membersihkan keseluruhan sejarah anda. Untuk mengalih keluar fail bernama password.txt daripada keseluruhan sejarah, anda boleh menggunakan pilihan --tree-filter pada cawangan-penapis:
$ git filter-branch --tree-filter 'rm -f passwords.txt' HEAD
Tulis semula 6b9b3cf04e7c5686a9cb838c3f36a8cb6a0fc2bd (21/21)
Rujukan 'refs/heads/master' telah ditulis semula
Pilihan --tree-filter akan melaksanakan arahan yang ditentukan dan kemudian menyerahkan semula keputusan setiap kali projek itu diperiksa. Dalam contoh ini, anda akan memadamkan fail bernama password.txt daripada semua syot kilat, tidak kira sama ada ia wujud. Jika anda ingin memadam semua fail sandaran editor yang dilakukan secara tidak sengaja, anda boleh menjalankan arahan seperti git filter-branch --tree-filter 'rm -f *~' HEAD.
Anda boleh menonton Git menulis semula pepohon direktori dan komit, kemudian gerakkan penuding cawangan ke penghujung. Pendekatan yang lebih baik ialah melakukan ini pada cawangan ujian dan kemudian tetapkan semula cawangan induk anda selepas anda pasti produk itu benar-benar seperti yang anda mahukan. Untuk menjalankan penapis-cawangan pada semua cawangan anda, anda boleh menghantar --semua kepada arahan.
Tetapkan subdirektori sebagai direktori akar baharu
Katakan anda telah melengkapkan import daripada sistem kawalan kod lain dan mempunyai beberapa subdirektori yang tidak bermakna (trunk, tag, dll.). Jika anda mahu subdirektori batang menjadi direktori akar projek baharu untuk setiap penyerahan, cawangan penapis juga boleh membantu anda melakukannya:
$ git penapis-cawangan --subdirektori-penapis batang HEAD
Tulis semula 856f0bf61e41a27326cdae8f09fe708d679f596f (12/12)
Rujukan 'refs/heads/master' telah ditulis semula
Sekarang direktori akar projek anda ialah subdirektori batang. Git secara automatik akan memadamkan komit yang tidak menjejaskan subdirektori ini.
git rm -r --cache . git add . git commit -m "gitignore working"
Kali pertama saya menghantar soalan, sistem sudah lama tidak menyemaknya, jadi saya mencarinya. Sebenarnya saya menemui jawapan daripada stackoverflow malam tadi. Tetapi terima kasih semua. http://stackoverflow.com/questions/1139762/gitignore-file-not-ignoring
Sila masukkan penerangan pautan
Alih keluar fail daripada semua komit Ini sering berlaku. Sesetengah orang menggunakan git add . Mungkin anda secara tidak sengaja membuat fail yang mengandungi kata laluan dan anda ingin menjadikan projek anda sumber terbuka. cawangan penapis mungkin akan menjadi alat yang anda gunakan untuk membersihkan keseluruhan sejarah anda. Untuk mengalih keluar fail bernama password.txt daripada keseluruhan sejarah, anda boleh menggunakan pilihan --tree-filter pada cawangan-penapis:
$ git filter-branch --tree-filter 'rm -f passwords.txt' HEAD Tulis semula 6b9b3cf04e7c5686a9cb838c3f36a8cb6a0fc2bd (21/21) Rujukan 'refs/heads/master' telah ditulis semula Pilihan --tree-filter akan melaksanakan arahan yang ditentukan dan kemudian menyerahkan semula keputusan setiap kali projek itu diperiksa. Dalam contoh ini, anda akan memadamkan fail bernama password.txt daripada semua syot kilat, tidak kira sama ada ia wujud. Jika anda ingin memadam semua fail sandaran editor yang dilakukan secara tidak sengaja, anda boleh menjalankan arahan seperti git filter-branch --tree-filter 'rm -f *~' HEAD.
Anda boleh menonton Git menulis semula pepohon direktori dan komit, kemudian gerakkan penuding cawangan ke penghujung. Pendekatan yang lebih baik ialah melakukan ini pada cawangan ujian dan kemudian tetapkan semula cawangan induk anda selepas anda pasti produk itu benar-benar seperti yang anda mahukan. Untuk menjalankan penapis-cawangan pada semua cawangan anda, anda boleh menghantar --semua kepada arahan.
Tetapkan subdirektori sebagai direktori akar baharu Katakan anda telah melengkapkan import daripada sistem kawalan kod lain dan mempunyai beberapa subdirektori yang tidak bermakna (trunk, tag, dll.). Jika anda mahu subdirektori batang menjadi direktori akar projek baharu untuk setiap penyerahan, cawangan penapis juga boleh membantu anda melakukannya:
$ git penapis-cawangan --subdirektori-penapis batang HEAD Tulis semula 856f0bf61e41a27326cdae8f09fe708d679f596f (12/12) Rujukan 'refs/heads/master' telah ditulis semula Sekarang direktori akar projek anda ialah subdirektori batang. Git secara automatik akan memadamkan komit yang tidak menjejaskan subdirektori ini.
Sediakan penyelesaian yang agak baru: Masukkan projek-->Tetapan-->Padamkan Repositori ini dan kemudian buat repo baharu dan anda selesai
Anda perlu menggunakan
Untuk butiran, anda boleh melihat operasi buat asal Git - tetapkan semula, daftar keluar dan buat asal: http://www.liuhui998.com/4_9.html
Andaikata anda ingin membatalkan semua perubahan dan kembali kepada komit terkini Perintahnya adalah seperti berikut:
Halaman utama projek——>Tetapan——>Padamkan Repositori ini——>Serah Semula Okey, saya juga tidak pandai menggunakannya
Sandarkan dahulu atau komit dahulu (pengajaran berdarah)
Cara untuk menanyakan ketua rekod yang diserahkan