cari

Rumah  >  Soal Jawab  >  teks badan

如何删除github上的一个项目的内容,重新提交所有内容

刚上传了vs项目到github,但是忘记搞gitignore文件,导致项目上传的体积太大,

现在不知道怎么办了?

删除里面所有文件,写好gitignore文件后重新commit然后push?

高洛峰高洛峰2800 hari yang lalu794

membalas semua(7)saya akan balas

  • 大家讲道理

    大家讲道理2017-04-22 09:01:48

    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

    balas
    0
  • 阿神

    阿神2017-04-22 09:01:48

    Sila masukkan penerangan pautan

    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.

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-22 09:01:48

    git reset --hard `你想要回滚到的提交`
    
    git push --force
    

    balas
    0
  • 阿神

    阿神2017-04-22 09:01:48

    Sediakan penyelesaian yang agak baru: Masukkan projek-->Tetapan-->Padamkan Repositori ini dan kemudian buat repo baharu dan anda selesai

    balas
    0
  • 阿神

    阿神2017-04-22 09:01:48

    Anda perlu menggunakan

    git reset 
    

    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:

    $ git reset --hard HEAD
    

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-22 09:01:48

    Halaman utama projek——>Tetapan——>Padamkan Repositori ini——>Serah Semula Okey, saya juga tidak pandai menggunakannya

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-22 09:01:48

    Sandarkan dahulu atau komit dahulu (pengajaran berdarah)

    git reset --hard YOUR HEAD

    Cara untuk menanyakan ketua rekod yang diserahkan

    git reflog ||. git log

    balas
    0
  • Batalbalas