cari

Rumah  >  Soal Jawab  >  teks badan

Selepas git reset mengembalikan versi yang ditentukan, bagaimana untuk menyerahkannya kepada pelayan?

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))

阿神阿神2765 hari yang lalu1002

membalas semua(3)saya akan balas

  • 淡淡烟草味

    淡淡烟草味2017-06-05 11:10:52

    Saya masih belum memikirkan penyelesaian.

    (Sandarkan fail yang sedang diubah suai dahulu)

    Terbaik, kembali ke versi yang ditentukan dahulu
    git reset old_commit_idgit reset old_commit_id

    然后,新建分支
    git branch -b rcommit_id

    再,删除线上的master分支(将默认分支切换到其它分支)
    git push origin :master

    然后,将之前备份的文件覆盖当前分支内的文件。
    最后,将分支名改为master

    Kemudian, buat cawangan baharu 🎜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

    balas
    0
  • 高洛峰

    高洛峰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

    balas
    0
  • 为情所困

    为情所困2017-06-05 11:10:52

    git revert '20a3725c
    git push

    balas
    0
  • Batalbalas