masalah git cherry-pick?
世界只因有你
世界只因有你 2017-05-02 09:32:56
0
2
693

Buat gudang baharu, letakkan hanya satu fail teks di dalamnya dan buat 6 komit masing-masing Pada masa ini, git log --oneline sepatutnya kelihatan seperti ini

Kandungan fail adalah seperti berikut

Saya mahu membuang komit 442452d tetapi mengekalkan komit e09949e, begini cara saya melakukannya
git reset --hard 260effc
Kemudian git cherry-pick e09949e

Konflik berlaku pada masa ini, seperti yang ditunjukkan di bawah

Apa yang saya tidak faham adalah mengapa ia perlu ditampal secara langsung. Ia tidak sepatutnya kelihatan seperti gambar di atas hanya mengandungi '4' dan bukan '3' diperlukan Jika '3' dialih keluar secara manual, apa gunanya saya memilih ceri? Minta petunjuk kepada Tuhan! ! !

世界只因有你
世界只因有你

membalas semua(2)
Ty80

Kenapa tidak git revert 442452d sahaja?

Komit rekod pengubahsuaian relatif dan berkaitan dengan baris atas dan bawah kandungan yang diubah suai Jika baris sebelumnya hilang, konflik akan dilaporkan dan perlu diselesaikan secara manual. Jika kedua-dua komitmen anda tidak lagi dalam fungsi yang berkaitan, anda boleh berbalik terus.

Selain itu, menggunakan kaedah tetapan semula ini --hard dan kemudian cherry-pick tidak begitu baik Rakan usaha sama lain mungkin telah menambahkan komitmen lain di tengah, menjadikan pengendalian konflik berikutnya lebih sukar.

Senario penggunaan yang lebih baik untuk petik ceri ialah apabila anda mahukan ciri yang berasingan daripada cawangan lain pada satu cawangan.

漂亮男人

Kerana e09949e hanya mengandungi 4, iaitu untuk perbezaan komit sebelumnya442452d.

Tetapi kini anda telah mengalih keluar 442452d dan berharap untuk menunjuk nod induk e09949e daripada 442452d kepada 260effc memang akan berlaku konflik.

Saya tidak pasti jika penjelasan saya jelas tanpa gambar bergerak Jika anda mempunyai sebarang soalan, saya cadangkan anda memainkan tutorial ini terlebih dahulu.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan