Katakan saya menggunakan projek sumber terbuka Untuk memastikan github rasmi akar disegerakkan pada setiap masa, saya menggunakan git clone projek secara tempatan dan melakukan pembangunan sekunder saya tidak akan bercanggah dengan fail teras rasmi . Ya, tetapi fail individu masih akan bercanggah. .
Sebagai contoh, selepas tempoh masa, saya membuat beberapa pengubahsuaian pada komputer tempatan saya Ini adalah repositori rasmi yang turut membuat beberapa pengubahsuaian dan mengeluarkan versi kecil
Pada masa ini, saya ingin mengemas kini versi rasmi terkini Apabila menggunakan git pull, konflik akan digesa Kemudian masalah timbul
Pembangunan sekunder projek sumber terbuka Bagaimana untuk mendapatkan versi terkini melalui git pull pada bila-bila masa dan mengekalkan pengubahsuaian tempatan?
Jika terdapat konflik apabila git pull mendapat kemas kini rasmi terkini
Gunakan git stash untuk cache perubahan setempat.
Kemudian git pull untuk memuat turun versi rasmi terkini
Kemudian git stash pop untuk menggabungkan perubahan setempat ke dalam kod dan menyelesaikan konflik secara manual
Saya mengujinya secara ringkas dan mendapati tiada masalah, kerana saya tidak perlu menolak kod ke gudang rasmi, jadi saya biasanya tidak menambah, tetapi selepas pengalaman ini, saya membuat beberapa pengubahsuaian, dan pegawai mengemas kininya lagi Sesuatu
Menggunakan git pull masih tidak berfungsi Saya perlu menggunakan local git add . Kemudian ulangi langkah simpanan di atas untuk menyimpan kemas kini dan menggabungkan konflik,
Saya tidak tahu sama ada tindakan saya betul, atau adakah cara yang lebih baik?
Tidak perlu menyimpan, hanya lakukan perubahan dahulu, dan kemudian tarik untuk menyelesaikan konflik.
Malah, jika anda telah membuat komit setempat (git commit), anda tidak perlu
git stash
dahulu sebelum menarik perubahan jauh Hanyagit pull
ataugit fetch
dan kemudiangit merge
.Sudah tentu, jika anda belum membuat komit tempatan (git commit) sebelum menarik, tiada masalah dengan operasi anda di atas Walau bagaimanapun, anda juga boleh melengkapkan pengubahsuaian setempat terlebih dahulu dan kemudian menyerahkannya sebelum menarik ( git pull) .
Sebenarnya,
git stash
situasi permohonan anda tidak sesuaigit stash
biasanya digunakan apabila anda sedang menjalankan kerja di cawangan tertentu (ia tidak berbaloi untuk membuat penyerahan atau anda tidak mahu menyerahkannya di. semua), dan anda tiba-tiba mahu Beralih ke cawangan lain untuk melakukan sesuatu yang lain. Pada masa ini, menggunakangit stash
adalah sempurna.