将Git工程提交到两个不同的仓库

Posted 45°微笑看世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Git工程提交到两个不同的仓库相关的知识,希望对你有一定的参考价值。

使用场景:

  • 备份代码
  • 在使用新的代码管理仓库的过渡过程中,我们并不想直接扔掉原有代码管理仓库,同时又不想维护两套代码(我遇到的场景是从github迁移到GitLab过程中)

有两种配置方式,直接看配置文件

  1. 修改项目.git文件下的config文件(提交到两个仓库的相同分支)
 1 [core]
 2     repositoryformatversion = 0
 3     filemode = false
 4     bare = false
 5     logallrefupdates = true
 6     symlinks = false
 7     ignorecase = true
 8     hideDotFiles = dotGitOnly
 9 [remote "origin"]
10     url = ssh://github仓库地址
11     url = http://gitlab仓库地址
12     fetch = +refs/heads/*:refs/remotes/origin/*
13 [branch "master"]
14     remote = origin
15     merge = refs/heads/master

  

  2.修改项目.git文件下的config文件(提交到两个仓库的不同分支)

 1 [core]
 2     repositoryformatversion = 0
 3     filemode = false
 4     bare = false
 5     logallrefupdates = true
 6     symlinks = false
 7     ignorecase = true
 8     hideDotFiles = dotGitOnly
 9 [remote "origin"]
10     url = ssh://github仓库地址
11     fetch = +refs/heads/*:refs/remotes/origin/*
12 [remote "mirror"]
13   url = http://gitlab仓库地址
14   fetch = +refs/heads/*:refs/remotes/origin/*
15 [branch "master"]
16     remote = origin
17     remote = mirror
18     merge = refs/heads/master

用这种方法需要推送2次
git push origin
git push mirror

 

在没有特别要求时第一种配置方式更简洁。前提是在备份仓库建立同名的分支。

以上是关于将Git工程提交到两个不同的仓库的主要内容,如果未能解决你的问题,请参考以下文章

git:IDEA与git(IDEA提交代码到本地仓库&远程仓库远程仓库克隆代码分支)

用Git提交工程源码到github仓库

如何在svn系统中使用git

将本地新工程与 git 关联

IDEA使用Git将本地工程推送到远程仓库

Git-合并两个不同的仓库