git针对多远程仓库的管理(一)

背景:有些时候自己除了维护自己本地的仓库和私有的远程仓库外,需要从远程的开源项目中获取更新的代码,那就变成有两个或者以上的远程仓库了。这种情况下需要怎么处理呢?

 

 

 

 

 

一、使用gitlap导入码云的项目

这块直接通过URL import 把代码从码云引入到gitlap到就行了,具体步骤不写了。

 

二、让gitlap的仓库和码云的仓库关联

首先,gitlap的项目从 URL引入后,存在服务器的远程仓库,然后拉到本地,形成一个本地仓库。

这样就是一个远程仓库 http://10.10.58.117/neo0820/lilishop, 一个本地仓库。

但是这种情况下,码云原始仓库的更新代码就无从获知了。如何同时可以获知码云上原始仓库的代码更新呢?办法如下。

1.在本地仓库位置查看远程库

1 # 查看当前的远程库
2 git remote -v 

 

这样可以显示出来一个远程仓库,例如:

默认来源是origin

 

2、添加码云远程库

# git remote add 自己起个名字  https://gitee.com/beijing_hongye_huicheng/lilishop
git remote add gitee https://gitee.com/beijing_hongye_huicheng/lilishop

添加成功后会看到列表中会多出刚才添加第二个远程库gitee

 

 

3.拉取远程第二个仓库,更新本地的gitee的本地映像仓库,会新建一个分支为 远程库别名/分支名 ,我这里是 gitee/master ,如果有多个分支,则是 gitee/分支1gitee/分支2 依次类推

git pull gitee

 

 注意:1.本地的多仓库管理可以通过githubdesktop工具来查看管理、通过工具能看到不同的远程仓库映像用前缀分隔,但是最终本地的master分支只会有一支。

 

 注意 2.私有的远程仓库是只会有origin这部分仓库分支,是不会有gitee这一部分的仓库分支,通过gitlab的网页端可以查看到。

 

 

 

 

4.以后更新仓库代码就使用,更新master就行。 如果有其他的再更新其他的分支。

git pull gitee master

 

5.更新完后使用 git push origin master 推送到自己的gitlab的远程私有库。

git push origin master

 

 

注意:

git pull 

是从起源拉倒本地的master   git pull (from) origin (to) master

 

git pull gitee 

就是从外部远程gitee仓库拉取到本地 git pull (from) gitee 

 

git pull gitee master

就是从外部远程gitee仓库拉取到本地master    git pull (from) gitee (to) master 

 

git push
是把本地的master推送到origin(自己的远程仓库/代码服务器) git push (to) origin (from) master

 

git push gitee

就是把本地的master推送到 别人远程gitee仓库,git push (to) gitee (from) master 最好别别这么干,当然做了也得看别人接不接收。

 

当然从技术层面也可以一次性提交到所有的远程仓库 origin、gitee

git push --all

 

IDEA在推送的时候也支持选择不同的远程仓库进行推送

 

 

 

posted on 2022-07-18 19:00  Neo0820  阅读(498)  评论(0编辑  收藏  举报

导航