Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何镜像Github和VS Online?_Git_Github_Tfs_Azure Devops_Visual Studio 2015 - Fatal编程技术网

如何镜像Github和VS Online?

如何镜像Github和VS Online?,git,github,tfs,azure-devops,visual-studio-2015,Git,Github,Tfs,Azure Devops,Visual Studio 2015,我的代码存在于私有的Github.com repo中,也存在于私有的Microsoft Visual Studio Online git repo中。现在我想自动镜像/同步它们。因此,当我将某些东西签入Github时,它也会推送到VS Online,反之亦然 我知道如何通过在本地回购协议中添加额外的推送遥控器来实现“客户端”。但是,也可以在“服务器端”这样做吗?使用Github Webhooks还是微软的东西 因为否则,我必须指示所有想要处理代码的人,添加两个遥控器,还是我错了?我们现在唯一能做

我的代码存在于私有的Github.com repo中,也存在于私有的Microsoft Visual Studio Online git repo中。现在我想自动镜像/同步它们。因此,当我将某些东西签入Github时,它也会推送到VS Online,反之亦然

我知道如何通过在本地回购协议中添加额外的推送遥控器来实现“客户端”。但是,也可以在“服务器端”这样做吗?使用Github Webhooks还是微软的东西


因为否则,我必须指示所有想要处理代码的人,添加两个遥控器,还是我错了?

我们现在唯一能做的就是使用,它确实有一个免费的计划。目前,据我所知,没有一种方法可以通过网络钩子或任何其他方式将两者同步在一起

我会继续搜索你,如果我发现任何不同,我会更新这个答案

  • 将GitHub服务端点添加到VST(设置>服务)
  • 在VST中使用GitHub存储库创建空的生成定义
  • 选择存储库选项卡并指定连接、存储库和默认分支。(将Clean设置为true,清除源目录)
  • 选择“触发器”选项卡并选中“连续集成”、“批量更改”和“指定分支筛选器”
  • 选择选项选项卡并选中允许脚本访问OAuth令牌

  • 选择“生成”选项卡,并使用以下脚本添加PowerShell任务以同步所有分支

  • 
    git branch-r | findstr/v“\->”ForEach对象{$br=$\uuu.TrimStart();git branch-track$br.TrimStart(“origin/”)$br}
    $repoName=“$env:BUILD_REPOSITORY_NAME”。拆分('/')[1]
    $repoUri=“$env:SYSTEM\u TEAMFOUNDATIONCOLLECTIONURI”。子字符串(8)+“\u git/$repoName”
    git远程添加vsts“https://$env:SYSTEM_ACCESSTOKEN@$repoUri”
    git branch-r | findstr/v“\->”| ForEach对象{$br=$\.TrimStart(“origin/”);git push-u vsts$br}
    

    为什么不选择一个呢?@DanielMann因为VS Online有构建工具和测试工具,而github有一个很好的问题,uiVSO以工作项的形式进行bug跟踪。@DanielMann如果其中一个出现故障(比如github上今天的大规模DDOS),有一个后备方案感觉很好。我也对这个很感兴趣。如果您找到了一个解决方案,请不要忘记分享:数据这非常聪明,但为什么不将您的构建任务指向GitHub存储库呢?(这是一个严肃的问题,不是一个恶棍,我怀疑你正在解决一个我还没有看到的问题。)我确实看到了。有一些好处。首先,您有VST作为备份。其次,您可以为涉众利用VST中的更多功能。我们为什么不直接使用VST呢?我不知道。有些人喜欢Github接口。如果你在一个团队中,有时你需要尝试找到一种方法让事情顺利进行,而不是问为什么。顺便说一句,我甚至学会了如何使用powershell来解决这个问题。抱歉,澄清一下:我不是在问为什么要从GitHub+VST迁移到纯VST-VST可以让您在GitHub存储库的基础上进行本机构建。(您不需要在VSTS中使用Git支持来构建VSTS。)同样,我将构建任务指向Github。这样做不是为了运行构建。它适用于可以在VST中很好地引用代码的其他特性。