本地Git仓库关联多个远程仓库的两种方法

方法1:每次push、pull时分开操作
首先,查看本地仓库所关联的远程仓库:(假定最初仅关联了一个远程仓库)

$ git remote -v
 
origin  git@github.com:keithnull/keithnull.github.io.git (fetch)
origin  git@github.com:keithnull/keithnull.github.io.git (push)

然后,用 git remote add 添加一个远程仓库,其中name可以任意指定(对应上面的origin部分),比如:

$ git remote add coding.net git@git.coding.net:KeithNull/keithnull.github.io.git

再次查看本地仓库所关联的远程仓库,可以发现成功关联了两个远程仓库:

$ git remote -v
coding.net      git@git.coding.net:KeithNull/keithnull.github.io.git (fetch)
coding.net      git@git.coding.net:KeithNull/keithnull.github.io.git (push)
origin  git@github.com:keithnull/keithnull.github.io.git (fetch)
origin  git@github.com:keithnull/keithnull.github.io.git (push)

此后,若需进行push操作,则需要指定目标仓库,git push ,对这两个远程仓库分别操作:

$ git push origin master
$ git push coding.net master

同理,pull操作也需要指定从哪个远程仓库拉取,git pull ,从这两个仓库中选择其一:

$ git pull origin master
$ git pull coding.net master

方法2:push和pull无需额外操作
同样地,先查看已有的远程仓库:(假定最初仅关联了一个远程仓库)

$ git remote -v
origin  git@github.com:keithnull/keithnull.github.io.git (fetch)
origin  git@github.com:keithnull/keithnull.github.io.git (push)

然后,不额外添加远程仓库,而是给现有的远程仓库添加额外的 URL。使用 git remote set-url -add ,给已有的名为name的远程仓库添加一个远程地址,比如:

$ git remote set-url --add origin git@git.coding.net:KeithNull/keithnull.github.io.git

再次查看所关联的远程仓库:

$ git remote -v
origin  git@github.com:keithnull/keithnull.github.io.git (fetch)
origin  git@github.com:keithnull/keithnull.github.io.git (push)
origin  git@git.coding.net:KeithNull/keithnull.github.io.git (push)

可以看到,我们并没有如 方法1 一般增加远程仓库的数目,而是给一个远程仓库赋予了多个地址(或者准确地说,多个用于push的地址)。

因此,这样设置后的push 和pull操作与最初的操作完全一致,不需要进行调整。
                        
原文链接:https://blog.csdn.net/dhp1994/article/details/134094898

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,可以将一个本地 Git 仓库关联多个远程仓库。你可以按照以下步骤进行操作: 1. 首先,在本地创建一个空的 Git 仓库,或者进入已有的 Git 仓库目录。 2. 打开终端或命令行界面,使用 `git remote add` 命令来分别关联多个远程仓库。例如,如果你要关联的第一个远程仓库的名称为 "origin",远程仓库的 URL 为 "https://github.com/your-username/your-repo.git",则可以运行以下命令: ``` git remote add origin https://github.com/your-username/your-repo.git ``` 如果你要关联的第二个远程仓库的名称为 "second",远程仓库的 URL 为 "https://github.com/your-username/second-repo.git",则可以运行以下命令: ``` git remote add second https://github.com/your-username/second-repo.git ``` 这里的 "origin" 和 "second" 是远程仓库的名称,你可以根据需要自定义。 3. 确认关联成功后,你可以使用 `git remote -v` 命令来查看已关联远程仓库列表。例如,运行以下命令: ``` git remote -v ``` 你将看到类似以下输出: ``` origin https://github.com/your-username/your-repo.git (fetch) origin https://github.com/your-username/your-repo.git (push) second https://github.com/your-username/second-repo.git (fetch) second https://github.com/your-username/second-repo.git (push) ``` 这表示你已成功关联两个远程仓库。 4. 当你需要将代码推送到特定的远程仓库时,可以使用 `git push` 命令加上远程仓库的名称。例如,要将代码推送到 "origin" 远程仓库的 master 分支,可以运行以下命令: ``` git push origin master ``` 要将代码推送到 "second" 远程仓库的 develop 分支,可以运行以下命令: ``` git push second develop ``` 请注意,上述命令中的 "your-username" 应替换为你的 GitHub 用户名。你可以根据需要设置不同的远程仓库名称和分支名称。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值