如何同时推送代码到 2 github 个仓库?
How to push code to 2 github repositories at the same time?
我想使用git + vscode 从我的本地推送相同的代码到两个github repos 只有一个命令 而无需单独指定每个遥控器 .
我已经尝试在配置文件中添加2个远程仓库:
更新的配置文件:
cat config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "github"]
fetch = +refs/heads/*:refs/remotes/github/*
url = git@github.com:profile2/e-commerceAPI.git
pushurl = git@github.com:profile2/e-commerceAPI.git
现在当我 git push
它 只推送到一个 repo,这个
profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
我试过使用 git push -u github main
但它抛出错误:
error: src refspec main does not match any,
error: failed to push some refs to 'github.com:profile2/e-comm..
我试过 git push -u origin main
。
但是,我完全不熟悉这个过程,这是我的第一次尝试。请建议。只要保留我的提交,我也可以想办法每次都通过多个步骤推送它。
谢谢
git push
命令仅推送到一 (1) 个存储库,每次您 运行 它。您选择(如 one)它应该推送到的存储库,在您 运行 它时,使用参数 origin
或 github
, 鉴于你的两个 remote
s:
git push origin
或:
git push github
前者连接到:
url = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
后者连接到:
pushurl = git@github.com:profile2/e-commerceAPI.git
它使用 pushurl
设置,因为它 有 一个 pushurl
设置;由于 origin
缺少这样的设置,因此它使用 url
设置。
在任何一种情况下,建立此连接后,您的 git push
将发送的一组提交和其他对象,以及它将发出的一组请求 到 谁在 URL 处回答,将取决于最后一个参数。因此,如果您想每次发送 master
分支提交,并且每次都让 GitHub 存储库更新 its master
分支,您将每次使用master
:
git push origin master
git push github master
你应该运行两个命令来更新两个遥控器。这允许您检测哪一个失败,如果一个失败。
I want to push the same code from my local using git + vscode to two github repos with only one command without individually specifying each remote.
你不能那样做。事实证明,git push
会这样做,但没有记录。因此,它可能会在未来停止工作。做其他事情肯定更安全:例如,您可以设置一个包含这两个命令的 alias 或 script,并且 运行 别名或脚本,至少从命令行。您是否可以以及如何在 VS 中通过鼠标执行此操作,我不知道。
要使用 Git 执行此操作,只需在给定的 remote
下设置两个或更多 url
或 pushurl
,例如:
[remote "pushpair"]
pushurl = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
pushurl = git@github.com:profile2/e-commerceAPI.git
运行 git push pushpair master
现在将尝试按顺序推送到两个 pushurl 设置中的每一个。两者都可能失败; Git一个失败了还是会尝试剩下的一个。这是基于 Git 源代码,而不是文档。
(请注意,如果您使用一个 pushurl
,任何 url
设置都将被忽略,因此两者都必须是 pushurl
。如果您使用 url
而没有 pushurl
,设置多个URL,都会用到。不过,这里的git fetch
如何表现还不清楚。)
我想使用git + vscode 从我的本地推送相同的代码到两个github repos 只有一个命令 而无需单独指定每个遥控器 .
我已经尝试在配置文件中添加2个远程仓库: 更新的配置文件:
cat config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "github"]
fetch = +refs/heads/*:refs/remotes/github/*
url = git@github.com:profile2/e-commerceAPI.git
pushurl = git@github.com:profile2/e-commerceAPI.git
现在当我 git push
它 只推送到一个 repo,这个
profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
我试过使用 git push -u github main
但它抛出错误:
error: src refspec main does not match any, error: failed to push some refs to 'github.com:profile2/e-comm..
我试过 git push -u origin main
。
但是,我完全不熟悉这个过程,这是我的第一次尝试。请建议。只要保留我的提交,我也可以想办法每次都通过多个步骤推送它。
谢谢
git push
命令仅推送到一 (1) 个存储库,每次您 运行 它。您选择(如 one)它应该推送到的存储库,在您 运行 它时,使用参数 origin
或 github
, 鉴于你的两个 remote
s:
git push origin
或:
git push github
前者连接到:
url = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
后者连接到:
pushurl = git@github.com:profile2/e-commerceAPI.git
它使用 pushurl
设置,因为它 有 一个 pushurl
设置;由于 origin
缺少这样的设置,因此它使用 url
设置。
在任何一种情况下,建立此连接后,您的 git push
将发送的一组提交和其他对象,以及它将发出的一组请求 到 谁在 URL 处回答,将取决于最后一个参数。因此,如果您想每次发送 master
分支提交,并且每次都让 GitHub 存储库更新 its master
分支,您将每次使用master
:
git push origin master
git push github master
你应该运行两个命令来更新两个遥控器。这允许您检测哪一个失败,如果一个失败。
I want to push the same code from my local using git + vscode to two github repos with only one command without individually specifying each remote.
你不能那样做。事实证明,git push
会这样做,但没有记录。因此,它可能会在未来停止工作。做其他事情肯定更安全:例如,您可以设置一个包含这两个命令的 alias 或 script,并且 运行 别名或脚本,至少从命令行。您是否可以以及如何在 VS 中通过鼠标执行此操作,我不知道。
要使用 Git 执行此操作,只需在给定的 remote
下设置两个或更多 url
或 pushurl
,例如:
[remote "pushpair"]
pushurl = git@github.com:profile1/-MS_E-commerce_Grus_Tep_Online_Full-time_2021_1.git
pushurl = git@github.com:profile2/e-commerceAPI.git
运行 git push pushpair master
现在将尝试按顺序推送到两个 pushurl 设置中的每一个。两者都可能失败; Git一个失败了还是会尝试剩下的一个。这是基于 Git 源代码,而不是文档。
(请注意,如果您使用一个 pushurl
,任何 url
设置都将被忽略,因此两者都必须是 pushurl
。如果您使用 url
而没有 pushurl
,设置多个URL,都会用到。不过,这里的git fetch
如何表现还不清楚。)