Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库

Git关联多个远程仓库


首先先来谈谈我遇到问题的场景,为什么我需要要关联多个仓库?

我在参与一个开源项目时,是通过fork源仓库,我是通过pr(pull request)的方式更新自己的仓库和提交代码。
操作过程如图:
Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第1张图片
我原来的这种方式是提交我的代码到自己的远程仓库,然后提pr给开源仓库,而拉代码我一般是先拉到我的远程仓库,然后再更新我的本地仓库(当然也可以直接拉源仓库的代码,但是这样需要用命令拉,需要copy地址)。这个过程都需要经过一个中间仓库,很麻烦。

并且,我在提代码的时候发生了这样的问题:
我的代码提交到自己的远程仓库,在这个时候源仓库更新了,再从自己的仓库提到源仓库时发生了冲突,并且没法在线合并,就尬在这里了。之后我根据github给的提示,先拉到自己的本地仓库合并好再提交代码,结果可能是我操作不好导致没法合并了,甚至都给一位特别厉害的大佬都整懵了,最后的解决方式是重新拉代码。

为了避免再次出现这种情况,我就在本地仓库关联多个远程仓库。

关联多个仓库的好处有:

  • 在开源项目中可以更加方便地push/pull代码
  • 可以方便同时提交代码到多个代码托管仓库,比如同时把代码提交到github和码云

具体的流程如图:
Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第2张图片
我是通过IDEA关联两个仓库的!在关联两个仓库之后,我就可以从源仓库pull代码,向自己的仓库push代码,然后从自己的远程仓库提pr,这样的单向流程就清晰很多,能避免很多问题,结合IDEA使用效率会非常高。

IDEA配置多个远程仓库及其使用方式

  1. 首先在git相关的菜单中找到Remotes

Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第3张图片

  1. 在弹出的填写卡中添加远程地址并起一个合适的名字

Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第4张图片

  1. 添加好后我们可以打开git面板(我感觉这个很好用,特别方便) ,这里可以看到配置好的远程仓库

Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第5张图片
带Head的表示这个远程仓库是本地仓库的主远程仓库

  1. 我们可以选中远程分支,右键选择checkout就可以切换到远程分支,当然也可以new branch以远程分支为模板新建一个本地分支
    Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第6张图片

  2. 如何拉代码呢?

找到git的pull选项
Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第7张图片

Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第8张图片
在IDEA的右上角还有快捷的pull和push,下回在这里拉就可以。

  1. 如何推代码?

我们可以在git选项卡选择本地分支右键push
Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第9张图片

我们可以在这里选择仓库和分支
Java工具篇-Git 基于IDEA管理的本地仓库同时关联多个远程仓库_第10张图片
当然通过这种方式, IDEA可以同时提交代码给多个远程仓库,如gitee、github

  1. 最后在把自己的代码在github上提pr就可以了

你可能感兴趣的:(#,Java工具篇,git,intellij-idea,github)