Rumah > Soal Jawab > teks badan
一个项目,fork 出来,修改了其中一个文件,git commit & push,然后获取上游的更新,并和自己的代码 merge,merge 后我对原来那个文件的修改被合并,变成上游的代码,现在我想把该文件回退到之前我修改并提交的状态,但是我用 git log 查看的时候出现了标题说明的问题…十分不理解…
(图里,我是 hyzhang)
项目在这里
習慣沉默2017-04-24 16:02:42
Oleh kerana anda menggunakan -2
dan pengubahsuaian huluan yang digabungkan adalah lebih baharu daripada anda, jadi pengubahsuaian anda sendiri disenaraikan di luar 2 teratas. Jangan gunakan -2
, semak sejarah lengkap, cari versi yang ingin anda pulihkan, semaknya dan kemudian buat komitmen.
过去多啦不再A梦2017-04-24 16:02:42
Pasang tambahan git, kemudian jalankan git revert, ia akan mengendalikan segala-galanya untuk anda
黄舟2017-04-24 16:02:42
Cuba git log --pretty=oneline modules.rst
Selepas melihat antara muka ini, saya masih mengesyorkan tig
Saya clone
menambah pustaka anda, kemudian saya checkout
berpindah ke commit
anda yang sebelumnya dan kemudian mencipta cawangan baharu dan kemudian melakukan operasi diff
Berikut ialah hasilnya:
Dari fix typo and translation
hingga Merge...
Tiada modules.rst
sejarah pengubahsuaian
Masih tiada rekod pengubahsuaian untuk add...
daripada fix typo and translation
hingga modules.rst
Dari fix typo
hingga add...
akhirnya rekod pengubahsuaian modules.rst
muncul
Jadi, jelas sekali bahawa rekod git
anda yang terkini log
tidak mengubah suai fail commit
, jadi bagaimanakah ia boleh muncul dalam modules.rst
? log
: commit
, boleh ditentukan bahawa penyerahan daripada git diff
hingga fix typo
adalah operasi terbaharu pada add...
, jadi melihat modules.rst
daripada modules.rst
pastinya hanya paparan sehingga log
Kali ini add...
. commit
untuk memaparkan git log --merges
untuk merge
: commit
sebelumnya, merge
anda wujud merge
kali ini, dan ini conflict
berkaitan dengan fail masalah anda conflict
, jadi saya menganalisis bahawa ini sepatutnya menjadi masalah, dan anda sepatutnya fail menghasilkan konflik, tetapi anda tidak menyelesaikan konflik dan modules.rst
berjaya diabaikan atas sebab yang tidak diketahui, jadi ia tidak akan memasuki sejarah merge
sebagai sebahagian daripada commit
. Baiklah, sudah tiba masanya untuk berehat, saya harap jawapannya akan membantu penyoal. :)log