Git将一个项目同时从本地推送到GitHub和Gitee

前言

博主是根据本身的状况写这篇博文的,每一个人遇到的状况和需求可能不同哈,因此初始的步骤也不必定一致,可是同时推送到Github和Gitee的步骤都会是一致滴!html

 

Gitee拉取Github仓库

直接在Gitee中建立一个项目,而后再最后一行导入Github项目就阔以啦!git

去到你的Github仓库复制https连接,直接粘贴就阔以啦github

到此为止,在Gitee就已经建立好仓库啦ssh

 

本地配置推送方式

方式一:定义不一样的远程仓库名称,而后分别推送 屡次推送,配了几个远程仓库就推送几回 fetch

方式二:在同一个远程仓库下添加另外一个远程仓库的地址,而后推送 only一次推送 url

 

如下状况均是本地只有单个ssh-key时的操做!!spa

方式一:屡次推送

优势 缺点
  1. 想推哪一个仓库就推哪一个
  2. 不想推哪一个就不推哪一个
推送仓库数量多时,时间成本高

1.能够直接经过命令将本地项目和gitee项目关联htm

 git remote add gitee 码云项目地址 blog

2.也能够经过修改本地项目的配置文件rem

  1. 首先,进入到项目的 .git 文件夹,打开 config 文件
  2. 而后,找到 [remote "origin"] ,复制一份remote到下面,修改remote的名字和url便可

 为了不冲突,将原始的remote名字也改掉,注意:remote的名字任意,可是在提交的时候要与这里对应

 

3.执行如下命令,能够看到配置的两个仓库

 git remote 

4.推送代码时,须要对两个仓库分别执行一次push命令,也就是屡次推送

git push github matser 

git push gitee master  

 

方式二:一次推送

1.经过命令将码云项目地址添加到本地已有的remote下

 git remote set-url --add origin 码云项目地址 

2.也能够经过修改本地项目的配置文件

3.推送代码只需执行如下一条命令便可 

git push 

 

可能会遇到的问题

博主就是配完以后遇到了该问题,因此拿出来跟你们说说哈

git push的时有时候会出现错误[rejected] master -> master (fetch first)

此时能够输入: git push -f   进行解决错误,而后再: git push 

若是上述解决方式无论用也能够输入: git pull --rebase origin master  以后再进行 git push 便可。

 

当本地有多个ssh-key时

若是也想配多个ssh-key的话,能够参照这篇文章哦:http://www.javashuo.com/article/p-ozvtcfrw-db.html

你须要更改两个地方

第一:公钥配置文件,目录是: C:\Users\user\.ssh 下的 config 文件

如今多了gitee,因此对应的Host也要增长,以下图

我这里是两个ssh-key都会被Github和Gitee共用,正常来讲是一个ssh-key指向一个仓库便可,譬如第一个key的Host配成Github的,第二个Key的Host配成Gitee

 

第二:须要修改在上面配置过的 config 文件,它在你的项目目录下的 .git 文件夹下

 本来只有一个ssh-key时,你的配置文件多是这样的

 

 当你有两个ssh-key时,你的配置文件就须要改为以下

 

最后将 Github_HOST 、 Gitee_HOST 替换成你本身配置里的Host地址

其他步骤都是同样的啦!这里就是要强调下,若是有多个ssh-key时,还得修改下配置文件而已~

原文出处:https://www.cnblogs.com/poloyy/p/12215199.html

相关文章
相关标签/搜索