一个项目设置多个git地址,同时推送到多个git地址上

一、 目的:多处备份,确保代码不会丢失。
二、 前提:

  1. 项目已经在一个gitLab地址A上
  2. 同时在自己的码云上新建了一个(仓库 )git地址B
  3. 现在想实现在git地址A项目中,提交代码的同时,同时提交到git地址B上

三、方法:

  1. 需要push两次,虽不符合题目要求,但是可以pull两次 (优点)
    (1) 在git A项目中添加gitB 远程地址
git remote add origin2 https://gitee.com/xxxxxx.git // origin2可以自定义

(2)拉取gitB 地址上的数据

git pull origin2 master --allow-unrelated-histories
(--allow-unrelated-histories是为了解决冲突)

(3)把gitA 项目同步到gitB中

git push origin2 master

此时,我们基本实现了可以把一个项目可以提交到两个git地址了,但是每次提交内容都需要进行如下两次提交,才能实现把一个项目同时提交到两个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的远程地址
  1. 只需要 push 一次
    (1)在gitA项目中给origin增加一个可以push的地址
git remote set-url --add origin https://gitee.com/xxxxxx.git
//给origin添加一个远程push地址,这样一次push就能同时push到两个地址上面 
git remote -v //查看是否多了一条push地址(这个可不执行)

(2)push 推送 :

git push

若出现报错,采用强制推送:

 git push origin master -f
image.png

注:删除添加的路径的方法是

git remote set-url --delete origin https://gitee.com/xxxxxx.git
  1. 若项目存在平行分支(各分支不同项目互不影响)
    (1)gitB地址上创建对应分支 (在gitee中)
    (2)在gitA 分支项目中给 origin增加可push的地址
git remote set-url --add origin https://gitee.com/xxxxxx.git 
git remote -v //查看是否多了一条push地址

(3)push 推送:

git push

出现同上报错,强制推送:

git push origin 分支名 -f
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容