Rumah > Soal Jawab > teks badan
分别有仓库 A(github),B(JAE 的 git),本机为C。
A, B都进行了 README.md 的初始化,就是说,这个情况下,已经存在冲突了,log不一致。
先从仓库A获取下来,C 修改完毕提交,顺利提交至A,
此时 如何从 C 提交到B,需要进行多少操作,使得仓库记录 A 和 B 的log一致(后面一致即可)?
这个问题我尝试过,没解决。
某草草2017-04-27 09:04:42
Setelah sekian lama, selepas penggunaan berterusan git, saya juga tahu kaedah tertentu.
Anggapkan gudang a ialah gudang kegunaan akhir dan b ialah gudang keluaran. Cawangan semua adalah dev
Sekarang saya akan membalas kepada diri saya sendiri:
Langkah pertama ialah menambah gudang jauh
git remote tambah origin1 git.a
git remote tambah origin2 git.b
Langkah kedua ialah memastikan tiada apa-apa yang berubah secara setempat, tarik alamat gudang jauh, dan kemudian pangkalan semula.
git fetch origin1
git rebase -i origin1/dev
Jika ada konflik, selesaikan.
git push -f origin1 dev
git push -f origin2 dev
selesai.
漂亮男人2017-04-27 09:04:42
Malah, anda boleh mengosongkan fail permulaan dan menambah alamat gudang jauh lain ke .git/config setempat, seperti:
[remote "all"]
url = https://github .com /segment/test.git
url = https://git.oschina.net/segment/test.git
Operasi seterusnya adalah sama dan kod yang diserahkan akan diserahkan kepada dua gudang secara serentak .
阿神2017-04-27 09:04:42
Saya belum mencuba dua repositori git, tetapi saya rasa ia berfungsi seperti ini:
1.git remote tambah $C remote warehouse name $C remote warehouse url
2. ambil ke C
3. Gabungan setempat
4.push $C nama gudang jauh $nama projek
Rujukan: http://www.git-scm.com/book/zh/Git-%E5%9F%BA%E7%A1%80-%E8%BF%9C%E7%A8%8B%E4 %BB%93%E5%BA%93%E7%9A%84%E4%BD%BF%E7%94%A8
漂亮男人2017-04-27 09:04:42
Penyelesaian untuk menyimpan semua log dalam cawangan (diandaikan sebagai cawangan induk) sama:
Selepas menolaknya ke atas, log C dan B akan konsisten, dan anda boleh meneruskan operasi
Jika anda ingin memastikan semua cawangan konsisten, saya cadangkan anda hanya membuat projek baharu pada jae dan tolak C kepadanya
Semoga ia membantu anda
伊谢尔伦2017-04-27 09:04:42
Saya rasa sebelum menarik dari mana-mana repositori jauh,
git simpanan
Kemudian tarik, ubah suai, tambah, serahkan, tolak. Sekali lagi
git simpanan pop
Kemudian selesaikan konflik jika ada Jika tiada konflik, tarik terus kod dari gudang jauh yang lain, kemudian ubah suai, tambah, serahkan dan tolak langkah demi langkah.
Semuanya berdasarkan tekaan Sila praktikkan sendiri jika anda khusus. Untuk rujukan sahaja.
天蓬老师2017-04-27 09:04:42
Saya rasa anda sudah tahu cara menambah berbilang repositori jauh, jadi saya tidak akan membahasnya.
Terus: Apabila C=A, di bawah C git push -f 'B远程仓库' '分支'
Dengan cara ini, walaupun B akan bercanggah dengan A C, ia akan dipaksa untuk menimpa keadaan C. Jadi A=B=C. LOG akan konsisten selepas itu. Parameter -f bermaksud tolakan paksa.
cuba sahaja
我想大声告诉你2017-04-27 09:04:42
Hanya konfigurasikan gudang cermin
1.git remote add --mirror=push --mirror=fetch repoName url
2.git push repoName master