Rumah  >  Soal Jawab  >  teks badan

git 如何回滚

场景:

如果用git reset --hard命令回滚到A修改的版本号,那么B的修改也被丢弃了

过去多啦不再A梦过去多啦不再A梦2727 hari yang lalu703

membalas semua(10)saya akan balas

  • 巴扎黑

    巴扎黑2017-05-02 09:39:50

    $ mkdir test
    $ cd test
    $ git init
    $ echo aaaa>a.txt
    $ echo bbbb>b.txt
    $ git commit -a -m "init two files"
    [master (root-commit) 2ca34b8] init
    ...
    $ echo update>a.txt
    $ git commit -a -m "update file a"
    [master **e216f56**] update file a
    ...
    $ echo update>b.txt
    $ git commit -a -m "update file b"
    [master 6906147] update file b
    ...
    $ git revert **e216f56**
    unix2dos: converting file f:/test/.git/COMMIT_EDITMSG...
    dos2unix: converting file f:/test/.git/COMMIT_EDITMSG...
    [master 2a9c653] Revert "update file a"
    ...

    balas
    0
  • PHPz

    PHPz2017-05-02 09:39:50

    git revert (nombor versi)

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-05-02 09:39:50

    Anda tidak akan kehilangan apa-apa dengan melakukan ini, kita semua melakukan ini..
    git reset --hard command kembali ke nombor versi yang diubah suai oleh A
    git pull --rebase origin menarik ke bawah cawangan nombor B Semak kod untuk melihat jika terdapat sebarang konflik Jika sebarang konflik diselesaikan
    , git push..

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-02 09:39:50

    git reset --soft HEAD@{id}, ini akan menarik balik penyerahan, tetapi pengubahsuaian dalam ruang kerja tidak akan hilang, kemudian betulkan pengubahsuaian yang salah, serahkan dan tolak ke hujung jauh

    balas
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:39:50

    Dalam kes ini, saya biasanya menyemak log terus dan memulihkan fail A untuk memastikan fail B lengkap

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-02 09:39:50

    Tidakkah anda boleh mengubah suai yang salah dan kemudian menyerahkannya sekali untuk menimpanya?

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-02 09:39:50

    Jangan gunakan git reset untuk komitmen yang telah diserahkan pada cawangan awam Jika seseorang telah menarik komitmen ini, ia akan menjadi sangat menyusahkan
    Dalam kes ini, anda harus menggunakan. git revert, yang akan menyebabkan Komit tunggal

    balas
    0
  • ringa_lee

    ringa_lee2017-05-02 09:39:50

    git rebase -i HEAD^^^
    Buka dokumen dengan editor lalai, ubah suai A sebelum penyerahan kepada drop atau singkatkan sebagai d dan simpannya.
    Penyerahan akan dibuang secara automatik (jika terdapat konflik, anda perlu menyelesaikan konflik itu sendiri)

    balas
    0
  • PHP中文网

    PHP中文网2017-05-02 09:39:50

    1. log git Lihat komitId A B sebelum A

    2. git reset --hard A commitId sebelumnya

    3. git cherry-pick B's commitId

    Fungsi ini dipanggil fungsi pembayaran, yang membolehkan anda mendapatkan pengubahsuaian diserahkan

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-02 09:39:50

    Anda hanya boleh berbalik, bukan menetapkan semula Sebarang komit yang telah ditolak ke alat kawalan jauh tidak boleh ditetapkan semula atau komit --pindaan Ini akan memusnahkan sejarah versi orang lain.

    Untuk maklumat tentang revert, anda boleh membaca artikel saya: /a/11...

    balas
    0
  • Batalbalas