【前情提要】在最近的工作中,涉及到把一份代码同时上传到两个git仓库,下面是简单的记录。
壹、准备工作
分别在Github和Gitee平台上配置SSH公钥,便于使用git协议拉取和提交推送代码的时候需要输入密码。
贰、拉取代码
我这里以我的git@github.com:eelve/fly.git仓库为示例来说明。使用工具或者命令拉取git@github.com:eelve/fly.git
git clone git@github.com:eelve/fly.git
叁、修改配置文件
进入拉取的仓库文件夹下,找到.git
的隐藏文件夹,打开config
文件
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[submodule]
active = .
[remote "origin"]
url = git@github.com:eelve/fly.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
修改成如下配置
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[submodule]
active = .
[remote "origin"]
url = git@github.com:eelve/fly.git
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@gitee.com:eelve/fly.git
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "gitee"]
url = git@gitee.com:eelve/fly.git
fetch = +refs/heads/*:refs/remotes/github/*
添加一个remote远程仓库,并添加远程仓库地址,修改的部分如下
url = git@gitee.com:eelve/fly.git
[remote "gitee"]
url = git@gitee.com:eelve/fly.git
fetch = +refs/heads/*:refs/remotes/github/*
肆、推送测试
使用其他工具或者执行git push
命令推送,我这里没有其他分支我这里就省略了分支名称等等
git push
然后查看gitee上面的仓库,可以看到,就已经成功推送上去了。
【后面的话】完成上述工作之后,就能够做到一次推送,两个仓库都有代码了。