Rumah > Soal Jawab > teks badan
Seperti yang dinyatakan, saya tidak menolak ke github selama setengah tahun Memandangkan terdapat beberapa balang di dalamnya yang tidak diabaikan, semakin banyak selepas menolak, ia akan melaporkan:
Counting objects: 4779, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3903/3903), done.
error: RPC failed; result=56, HTTP code = 200 | 14.92 MiB/s
fatal: The remote end hung up unexpectedlyMiB | 158.00 KiB/s
Writing objects: 100% (4779/4779), 628.84 MiB | 152.00 KiB/s, done.
Total 4779 (delta 2353), reused 3 (delta 0)
fatal: The remote end hung up unexpectedly
Everything up-to-date
Saya mencari beberapa kaedah, seperti menukar kepada ssh, dsb., tetapi tiada satu pun daripada mereka yang berjaya. Adakah terdapat cara mudah untuk membuang sejarah dan hanya menolak versi semasa?
Sebenarnya tiada pilihan selain mengklon dan menulis ganti semula, tetapi terdapat ratusan megabait dalam talian, jadi lebih baik jika terdapat sebarang parameter arahan yang boleh dibuang begitu sahaja.
Cari cara https://www.kernel.org/pub/software/scm/git/docs/git-filter-branch.html untuk mengosongkan sejarah. Saya sedang mencubanya. Saya akan terus menulis apabila ia OK.
伊谢尔伦2017-05-02 09:33:58
Saya akhirnya menemui cara yang mudah dengan menggunakan perintah cawangan penapis yang disertakan dengan git boleh menapis dan memadam, tetapi saya menjalankannya sepanjang malam dan ia tidak berakhir, terperangkap pada kemajuan 98%. Kemudian, saya menemui alat BFG Repo-Cleaner dan memadamkannya dalam beberapa minit Saiz direktori .git telah dikurangkan daripada kira-kira 2.9G kepada 70M Saya memadamkan semua tar.gz, zip, jar, war, dsb pada masa lalu, tinggalkan kod sumber dan akhirnya menolaknya ke github.
Proses pelaksanaan khusus ialah:
bfg --delete-files *.tar.gz # 后面的文件名匹配可换成自己要删除的文件名
git reflog expire --expire=now --all
git gc --prune=now --aggressive
git push --all --force
git push --all --tags --force