git push如何至两个git仓库
PHP中文网
PHP中文网 2017-04-27 09:02:42
0
7
825

分别有仓库 A(github),B(JAE 的 git),本机为C。

A, B都进行了 README.md 的初始化,就是说,这个情况下,已经存在冲突了,log不一致。

先从仓库A获取下来,C 修改完毕提交,顺利提交至A,

此时 如何从 C 提交到B,需要进行多少操作,使得仓库记录 A 和 B 的log一致(后面一致即可)?

这个问题我尝试过,没解决。

PHP中文网
PHP中文网

认证高级PHP讲师

membalas semua(7)
某草草

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.

漂亮男人

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 .

阿神

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

漂亮男人

Penyelesaian untuk menyimpan semua log dalam cawangan (diandaikan sebagai cawangan induk) sama:

  1. Tambah B pada senarai jauh git remote add jae git://xxxxx@xxxx.git
  2. Andaikan C telah menyegerakkan A dan menyelesaikan pengubahsuaian, maka anda perlu menyerahkan C kepada B. Pada masa ini, anda perlu memaksa penyerahan untuk mengelakkan masalah konflik tidak dapat diserahkan: git push jae master:master --paksa

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

伊谢尔伦

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.

Peter_Zhu

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

我想大声告诉你

Hanya konfigurasikan gudang cermin
1.git remote add --mirror=push --mirror=fetch repoName url
2.git push repoName master

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