Rumah > Soal Jawab > teks badan
Keadaannya begini:
Saya menemui penyerahan awal hari ini dan baru mendapati bahawa beberapa fail telah dipadamkan.
Sekarang kami mahu mengembalikan komit versi yang ditentukan:20a3725c
git reset --hard 20a3725c
Kemudian ia gagal apabila mencuba semula git push
, gesaan:
To git@xxx/xxx.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@xxx/xxx.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Sekarang kita perlu memulihkan kepada versi 20a3725c
, bagaimana untuk menyelesaikannya?
Persoalan lain ialah, bolehkah fail yang dipadamkan pada asalnya dipulihkan kepada versi semasa? (Oleh kerana versi semasa telah menambah atau memadam beberapa fail (dalam folder lain, bukan folder yang sama dengan fail yang dipadam))
淡淡烟草味2017-06-05 11:10:52
Saya masih belum memikirkan penyelesaian.
(Sandarkan fail yang sedang diubah suai dahulu)
Terbaik, kembali ke versi yang ditentukan dahulugit reset old_commit_id
git reset old_commit_id
然后,新建分支 git branch -b rcommit_id
再,删除线上的master
分支(将默认分支切换到其它分支)git push origin :master
然后,将之前备份的文件覆盖当前分支内的文件。
最后,将分支名改为master
git branch -b rcommit_id
🎜
🎜Seterusnya, padamkan cawangan master
dalam talian (tukar cawangan lalai ke cawangan lain)🎜git push origin :master
🎜
🎜Kemudian, tulis ganti fail dalam cawangan semasa dengan fail yang disandarkan sebelum ini. 🎜Akhir sekali, tukar nama cawangan kepada master
, serahkan sekali lagi, dan kemudian tetapkannya sebagai cawangan lalai. 🎜
git branch -m rcommit_id master
git push origin master
高洛峰2017-06-05 11:10:52
Ia mesti diubah suai sebelum boleh ditolak. . .
Jika anda hanya mahu memulihkan versi tertentu, anda boleh menggunakan git revert untuk membatalkan komit itu