Saya ingin membatalkan git saya karena komitmen yang tidak diinginkan pada asal jarak jauh, tapi saya tidak tahu revisi mana yang harus saya atur kembali.
Bagaimana saya bisa kembali ke keadaan sebelum saya melakukan git menarik pada asal terpencil?
git fetch upstream
pertama - tama, lalu melihat sekilasgit diff upstream/branch
untuk melihat apa yang akan Anda gabungkan. Jika semuanya baik-baik saja, lanjutkan dengangit merge upstream/branch
undo
melakukan dan mencentang kotak untuk dengan mudah dan jelas mem-stage dan menghapus file di panggung. GUI juga manusia!Jawaban:
Atau untuk membuatnya lebih eksplisit daripada jawaban yang lain:
aduh?
Versi git yang lebih tua dari 1.7.1 tidak memiliki
--keep
. Jika Anda menggunakan versi seperti itu, Anda bisa menggunakan--hard
- tetapi itu adalah operasi yang berbahaya karena kehilangan perubahan lokal apa pun.Untuk komentator
sumber
man git-rev-parse
jelaskan hal ini.HEAD@{1}
adalah nilai simbolis sebelumnyaHEAD
direflog
sedangkanHEAD^
adalah revisi (pertama) induk saat iniHEAD
. Kedua anggukan ini harus sama (mis. Setelah rebase, hard reset, switch cabang dan hal-hal semacam itu). Baca artikel tertaut untuk reflog. Cheersgit reset HEAD@`{1`}
HEAD@`{1`}
, atau dalam hal ini lakukan apa yang berfungsi pada cangkang POSIX juga:'HEAD@{1}'
git reflog show
harus menunjukkan kepada Anda sejarah KEPALA. Anda dapat menggunakannya untuk mencari tahu di mana Anda berada sebelumpull
. Kemudian Anda bisareset
AndaHEAD
untuk yang melakukan.sumber
pull
tindakan pertama? Jikapull
ada diHEAD@{1}
, dan tidak ada yang lain sebelum itu, bagaimana Anda kembali ke keadaan sebelumnya?Ini berhasil untuk saya.
Batalkan gabungan atau tarik:
Lihat ini: KEPALA dan ORIG_HEAD di Git untuk lebih.
sumber
Temukan
<SHA#>
komit yang ingin Anda tuju. Anda dapat menemukannya di github atau dengan mengetikgit log
ataugit reflog show
di baris perintah lalu lakukangit reset --hard <SHA#>
sumber
<SHA#>
Dari https://git-scm.com/docs/git-reset#Documentation/git-reset.txt-Undoamergeorpullinsideadirtyworkingtree
Lihat juga https://stackoverflow.com/a/30345382/621690
sumber