Visual Studio Team Services - 与Github存储库同步

时间:2017-03-13 23:18:24

标签: git visual-studio github visual-studio-2017 azure-pipelines

我尝试使用Visual Studio Team Services存储库设置我的公司,并将其与私有Github存储库同步。我们中只有少数人在技术方面工作,但有些人喜欢使用VSTS,有些人喜欢使用Github。 各处的文档说你可以同步这两个。这样,Github中的更改将显示在Visual Studio Online中,反之亦然。我知道说起来容易做起来难。

我已尝试按照Microsoft提供的说明进行操作,但未找到解决问题的方法。我可以轻松地克隆现有的Github仓库,但是那里的更改不会同步到VSTS仓库。

我也尝试了以下说明: How to synchronize VSTS and Github respositories when commits are made 构建通过,它甚至显示它已经提取的提交。但是,新文件和/或任何更改根本不会出现在VSTS存储库中。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

从Github repo同步VSTS repo的简单方法。

  1. GitHub服务端点添加到您的VSTS(设置>服务)
  2. 在VSTS中使用 GitHub存储库创建一个空构建定义
  3. 选择存储库标签,然后指定“连接”,“存储库”和“默认”分支。 (如有必要,将Clean设置为true)
  4. 选择触发器标签,然后选中持续集成,批量更改并指定分支过滤器
  5. 选择选项标签,然后选中允许脚本访问OAuth令牌
  6. 选择构建标签,然后添加命令行步骤/任务(工具:[Git tool path];参数:push https://$(System.AccessToken)@[xxx].visualstudio.com/[teamproject]/_git/[repo name] HEAD:[branch];工作文件夹:{{1 }}

答案 1 :(得分:0)

如果您已经将VSTS添加为“origin”,则可以通过添加第二个远程源在同一目录中完成所有操作,然后运行:

git remote add github https://github.com/user/repo.git

然后你可以将你所做的更改推高到两个回购

推送到VSTS:

git push origin

然后推送到GitHub

git push github

请参阅此github doc page

如果您想自动执行此操作,您可能希望将其设置为计算机上的计划任务,或者您可以将其连接到VSTS上的git挂钩?

答案 2 :(得分:0)

实际上,您可以从市场上使用“ Git Mirror”。

https://marketplace.visualstudio.com/items?itemName=nobitagamer.gitmirror