Rumah > Soal Jawab > teks badan
Saya baru mula belajar git dan saya ada soalan.
Kedua-dua Little A dan Little B mengklon versi terbaharu daripada git jauh.
Kedua-dua orang mengubah suai kod secara setempat.
Little A menyerahkan kod terlebih dahulu.
Apakah yang akan berlaku jika Little B menyerahkan kod itu semula?
Adakah kod yang diserahkan oleh Little A akan ditimpa atau tidak dibenarkan untuk diserahkan?
伊谢尔伦2017-05-02 09:35:30
Jawab soalan dahulu:
Little A menyerahkan kod terlebih dahulu, dan perpustakaan jauh dan perpustakaan tempatan Little A disegerakkan, dengan anggapan ia adalah 0 -> a
Pada masa ini, perpustakaan tempatan Little B ialah 0 -> perpustakaan jauh lebih tinggi daripada perpustakaan tempatan Jika perpustakaan lebih baharu, git akan menolak untuk menolak dan melaporkan ralat.
Git akan meminta git pull untuk mengemas kini perpustakaan tempatan, dan operasi tarik adalah bersamaan dengan operasi ambil dan gabung automatik Ia akan cuba menggabungkan perpustakaan jauh secara automatik ke dalam perpustakaan tempatan, dan kemudian memerlukan penggabungan manual apabila ada konflik.
漂亮男人2017-05-02 09:35:30
Little B akan digesa untuk menarik kod terlebih dahulu Jika baris kod yang diubah suai oleh Little B adalah sama dengan Little A, konflik akan digesa pada baris fail tersebut secara manual. Jika pengubahsuaian berbeza, Git akan menggabungkan kod yang berkaitan secara automatik
PHPz2017-05-02 09:35:30
Jika anda telah menukar tempat yang berbeza, anda boleh bergabung secara langsung Jika anda telah menukar tempat yang sama, git akan meletakkan dua versi kod secara automatik ke dalam fail dan menunggu anda memilih
迷茫2017-05-02 09:35:30
Little B mula-mula menarik balik kod Little A, kemudian menggabungkannya, dan kemudian menyerahkannya semula.
phpcn_u15822017-05-02 09:35:30
Selepas setiap pembangunan selesai, mula-mula tambah komit dan kemudian tarik kod jauh Jika terdapat konflik, selesaikan secepat mungkin dan kemudian, saya bercakap tentang tidak mempertimbangkan cawangan
淡淡烟草味2017-05-02 09:35:30
Terdapat tabiat yang saya rasa bagus Setiap kali anda menghantar kod, anda harus menarik dahulu dan kemudian menolak ralat untuk menyelesaikan konflik, ini adalah masalah kod dilaporkan, fail akan Dipaparkan dalam warna merah, terdapat garis pemisah yang atas adalah kod orang lain, dan yang bawah adalah kod anda sendiri.
高洛峰2017-05-02 09:35:30
Saya mabuk apabila saya melihat tajuk itu Memandangkan ia adalah konflik, ia mesti diselesaikan secara manual.
Alat tidak dapat menentukan cara menggabungkan kod, jadi akan berlaku konflik. Jika Git boleh menyelesaikan konflik dengan sendirinya, orang tidak perlu menulis kod.
習慣沉默2017-05-02 09:35:30
Apabila menyerahkan kod, Xiao B harus terlebih dahulu git pull untuk mengemas kini kod Jika terdapat percanggahan dalam kod, ralat yang serupa akan muncul:
error: Your local changes to the following files would be overwritten by merge:
****/****/**.php
Please, commit your changes or stash them before you can merge.
Pada masa ini, git memerlukan anda mengubah suai konflik secara manual terlebih dahulu, mencari fail yang digesa, dan """" akan muncul di bahagian bercanggah untuk memisahkan bahagian kod yang perlu diubah suai awak pilih.
大家讲道理2017-05-02 09:35:30
Git tidak akan menyelesaikan konflik dengan sendirinya, tetapi hanya akan cuba menggabungkan patch Jika git mendapati bahawa dua patch telah mengubah suai kandungan yang sama, ia akan menggunakan <<<<<<> ;>>>>> untuk memaparkan konflik dan kemudian menyelesaikannya.
我想大声告诉你2017-05-02 09:35:30
Jika pengubahsuaian kod anda kecil, anda boleh menyalin salinan dan menampalnya.