猿问

终端下如何配置 git 使其可以同时 push 到两个远程仓库?

[remote"origin"]
url=git@github.com:SegmentFault/XXX.git
fetch=+refs/heads/*:refs/remotes/origin/*
[remote"dev"]
url=git@gitlab.com:root/XXX.git
fetch=+refs/heads/*:refs/remotes/dev/*
config中配置了两个远程仓库。我想终端下一句gitpush同时把代码提交到两个仓库,该怎么做?
幕布斯7119047
浏览 378回答 2
2回答

婷婷同学_

我用过两种方法,最早的时候是设定多个remote,然后写一个alias,比如:$gitconfigalias.pushall"!gitpushorigin&&gitpushdev"后来在某一个版本(忘了具体的版本号)升级之后,Git多了一项设置,使得你可以为一个remote设置多个pushurl。比如说你问题里的例子,我可以不要remote"dev",只留下remote"origin",然后加一句:gitremote--set-url--add--pushorigingit@gitlab.com:root/XXX.git在这之后,你的remote"origin"就变成类似如下的结构:[remote"origin"]url=git@github.com:SegmentFault/XXX.gitfetch=+refs/heads/*:refs/remotes/origin/*pushurl=git@github.com:SegmentFault/XXX.gitpushurl=git@gitlab.com:root/XXX.git如此一来,我可以直接gitpushorigin就可以推向两个repos了。这两种方法其实各有各的适用场景,自己取舍吧。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答