【问题标题】:git push between two remote repositories两个远程仓库之间的 git push
【发布时间】:2020-06-15 19:55:37
【问题描述】:

需要使用什么特定语法才能让位于 Internet 上任意位置(位置 A)的计算机触发从公共 GitHub 存储库 github.com/someuser/source-repo(位置 B)到私有 Azure Git 存储库的 git push NameOfAzdoOrganization@dev.azure.com/NameOfAzdoOrganization/NameOfAzdoProject/_git/NameOfAzdoProject(位置 C)?

空的远程 Azure Git 存储库(位置 C)提供以下代码,用于从位置 A 的本地存储库推送以填充远程位置 C:

git remote add origin https://NameOfAzdoOrganization@dev.azure.com/NameOfAzdoOrganization/NameOfAzdoProject/_git/NameOfAzdoProject
git push -u origin --all

但是需要在位置 A 上运行什么命令才能从位置 B 推送到位置 C?

【问题讨论】:

  • 嗨@CodeMed。这个问题有更新吗?如果答案能给你一些帮助,请随时告诉我。只是提醒this
  • @KevinLu-MSFT 这是一个多方面问题的一部分。我们正在解决问题的其他方面,并会在其他项目得到解决后重新考虑。
  • 如果您有任何更新,请随时告诉我。谢谢。

标签: git github azure-devops azure-cli azure-git-deployment


【解决方案1】:

位置 A 上的计算机必须从位置 b 克隆 repo

git clone github.com/someuser/source-repo.git

然后将位置 C 中的 repo 添加为远程

git remote add locationC https://NameOfAzdoOrganization@dev.azure.com/NameOfAzdoOrganization/NameOfAzdoProject/_git/NameOfAzdoProject

然后推送到位置 C

git push -u locationC

如果您希望推送所有分支而不是默认分支,则可以将--all 添加到最后一个命令。

除非位置 B 的 repo 具有镜像功能(例如,gitlab 让您将对 repo 所做的任何推送镜像到另一个远程 repo),否则我相信您必须跳过这个环节。

【讨论】:

  • 我在想像 az azdo pull fromLocationB toLocationB 这样的东西。这会将位置 A 减少为简单地调用一两个命令,而不是传输整个 repo。
  • 抱歉,很遗憾我还没有使用 az 来处理 git。我确实希望 azure devops 有一个监控设置,可以自动拉取在另一个遥控器上所做的任何更改。
【解决方案2】:

我在想像 az azdo pull fromLocationB toLocationB 之类的东西。

据我所知,沙法是有效的。

根据您的要求,Azure Repo 中的位置 C 为空。并且您想将 repo 从 github 移动到 Azure Repo。

您可以尝试在位置 A 中使用az repos import command

az login 

az repos import create --git-source-url https://github.com/xxx/xxx.git --repository {Location C Repo name} --organization https://dev.azure.com/{Org name} --project {Project name}

注意:位置 C 中的 repo 需要为空。不支持导入已有内容的repo。

此方法是将 Github 中的 repo 直接导入 Azure Repo。它有局限性。

希望能给你一点帮助。

【讨论】:

  • 要使您的建议生效需要您在答案中未列出的几个额外步骤。例如,我们首先必须使用具有足够权限的有效personal access token 键入export AZURE_DEVOPS_EXT_PAT=xxxxxxxxxx。我们还必须输入az extension add --name azure-devops 才能将azure-devops 扩展安装到az cli 工具。然后我们终于可以运行az repos import create --git-source-url https://github.com/xxx/xxx.git --repository {Location C Repo name} --organization https://dev.azure.com/{Org name} --project {Project name}
猜你喜欢
  • 1970-01-01
  • 2012-01-05
  • 2018-12-06
  • 2017-05-10
  • 2019-06-22
  • 1970-01-01
  • 1970-01-01
  • 2013-09-22
  • 2016-11-12
相关资源
最近更新 更多