一、 目的:多處備份躺枕,確保代碼不會丟失服猪。
二、 前提:
- 項目已經(jīng)在一個gitLab地址A上
- 同時在自己的碼云上新建了一個(倉庫 )git地址B
- 現(xiàn)在想實現(xiàn)在git地址A項目中拐云,提交代碼的同時罢猪,同時提交到git地址B上
三、方法:
- 需要push兩次叉瘩,雖不符合題目要求膳帕,但是可以pull兩次 (優(yōu)點)
(1) 在git A項目中添加gitB 遠程地址
git remote add origin2 https://gitee.com/xxxxxx.git // origin2可以自定義
(2)拉取gitB 地址上的數(shù)據(jù)
git pull origin2 master --allow-unrelated-histories
(--allow-unrelated-histories是為了解決沖突)
(3)把gitA 項目同步到gitB中
git push origin2 master
此時,我們基本實現(xiàn)了可以把一個項目可以提交到兩個git地址了薇缅,但是每次提交內容都需要進行如下兩次提交危彩,才能實現(xiàn)把一個項目同時提交到兩個git地址。
git push origin master git push origin2 master
注: 刪除上面的添加的git B的遠程地址
git remote -v // 查看此時的包括兩個遠程地址
git remote rm origin2 // 刪除git B的遠程地址
git remote -v //此時應該只有git A的遠程地址
- 只需要 push 一次
(1)在gitA項目中給origin增加一個可以push的地址
git remote set-url --add origin https://gitee.com/xxxxxx.git
//給origin添加一個遠程push地址泳桦,這樣一次push就能同時push到兩個地址上面
git remote -v //查看是否多了一條push地址(這個可不執(zhí)行)
(2)push 推送 :
git push
若出現(xiàn)報錯汤徽,采用強制推送:
git push origin master -f
image.png
注:刪除添加的路徑的方法是
git remote set-url --delete origin https://gitee.com/xxxxxx.git
- 若項目存在平行分支(各分支不同項目互不影響)
(1)gitB地址上創(chuàng)建對應分支 (在gitee中)
(2)在gitA 分支項目中給 origin增加可push的地址
git remote set-url --add origin https://gitee.com/xxxxxx.git
git remote -v //查看是否多了一條push地址
(3)push 推送:
git push
出現(xiàn)同上報錯,強制推送:
git push origin 分支名 -f