需求

在之前的文章中“[DevOps]如何用VSTS持续集成到Github仓库

我们有讲述如何将vsts中的代码编译推送到github中,这一篇我们来完善,如果有人给你开源项目推送了代码,你审核后,如何自动将代码推送回vsts,从而实现双同步。

准备工作

首先你要生成一个key,登录到你的vsts中。进入“Security”菜单栏。



点击Add,添加一个密钥。

注意:此处生成的密钥,请自行保存,因为你刷新页面后,此处的密钥就不会再出现。同时密钥是有失效时间的。所以请注意。

创建一个任务

回到我们的“Build and Release”菜单栏,创建一个新的task。



点击新增“Empty process”取个名字叫做“SyncFromGithub”,选择队列为“Host”,



然后选择获取代码源,然后进行github授权,选择你对应的仓库。



回到Phase,新增一个cmd,命令行





在第一个命令行中填入以下代码。其中$(vststoken)为参数名称,我们待会儿说。

pull https://$(vststoken)@52ABP.visualstudio.com/_git/52ABP.School master

我们先拉取下vsts中仓库的代码。



然后再添加一个命令行工具。

push https://$(vststoken)@52ABP.visualstudio.com/_git/52ABP.School head:master

然后再将代码推送到服务vsts中。

参数的设置

我们之前要的token值,用于授权验证,打开“Variables”菜单栏,

新建一个vststoken的名称。将刚刚生成的token值,输入到value中。



如上图,加锁后。会启用掩码。这样的话就安全不少。

设置触发器

然后就跟之前的课程一样,设置下触发器。



到options中启用标记,如下图



生成任务规则

\((BuildDefinitionName)_\)(SourceBranchName)_\((Date:yyyyMMdd)\)(Rev:.r)

最后,右上角保存并添加到队列中即可。

END

最后的结果就是这样!

GitHub仓库:https://github.com/52ABP/52ABP.School

视频课程

最近我录制的.net core 入门已经发布有兴趣的可以去了解。

https://mp.weixin.qq.com/s/riPvwXpKe5LuPu0hQfXS9A

【52ABP实战教程】0.3-- 从github推送代码回vsts实现双向同步的更多相关文章

  1. sourcetree向github推送代码提示密码错误

    明明用户名和密码都是正确,sourceTree却在推送代码的时候提示无效的用户名或密码. 1.设置 2.选中并编辑 3.如果你本来选择的就是 GitHub,或者选择完以后还是不行的话,在 URL / ...

  2. github 推送代码

    一.所有更新一起推送 .git init //初始化本地仓库 . git add . //添加全部文件 .git commit -m 'add all the file' //提交修改 .git st ...

  3. 史上最全面的SignalR系列教程-3、SignalR 实现推送功能-集线器类实现方式

    1.概述 通过前两篇 史上最全面的SignalR系列教程-1.认识SignalR 史上最全面的SignalR系列教程-2.SignalR 实现推送功能-永久连接类实现方式 文章对SignalR的介绍, ...

  4. C#微信公众号开发系列教程五(接收事件推送与消息排重)

    微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...

  5. 使用git推送代码到开源中国以及IDEA环境下使用git

    使用git推送代码到开源中国以及IDEA环境下使用git 在学习Java的过程中我们会使用到git这个工具来将我们本周所编写的代码上传到开源中国进行代码托管,而在使用git的时候有很多的同学由于不会操 ...

  6. php 实时推送代码

    网站质量不错的网站可以在百度站长平台/数据提交/sitemap栏目下看到实时推送的功能, 目前这个工具是邀请开放, 百度的实时推送的api接口可以实时推送我们新发布的文章, 保证百度在第一时间收录. ...

  7. git 打tag(版本)、推送代码

    服务端:192.168.0.96 gitlab 客户端:192.168.0.97 git 服务端gitlab安装请参照: https://www.cnblogs.com/effortsing/p/10 ...

  8. gitlab安装、下载、推送 代码(推荐)

    环境: 内存必须5G以上 centos7.5 服务端:192.168.0.74 客户端:192.168.0.73 GitLab的安装 1.在CentOS系统上,下面的命令将会打开系统防火墙HTTP和S ...

  9. C# 简单的百度推送代码

    前段时间搞推送来着,安卓方面用到了百度的推送服务,由于只是简单的用到安卓推送的通知功能,所以没用百度推荐的C# SDK,通过借鉴网上的各种资料和百度的API,费了老大劲终于折腾出来一段能用的代码(早知 ...

随机推荐

  1. 详解apply

    先谈this 关于this的指向就不细说了,网上有无数博客以及you don't kown js这类书讲的已经很详细了这里就不炒冷饭了. 举几个简单的例子 function foo() { conso ...

  2. 使用Angular CLI进行单元测试和E2E测试

    第一篇文章是: "使用angular cli生成angular5项目" : http://www.cnblogs.com/cgzl/p/8594571.html 第二篇文章是: & ...

  3. [UWP]理解ControlTemplate中的VisualTransition

    1. 前言 VisualTransition是控件模板中的重要组成部分,无论是自定义控件或者修改控件样式都会接触到VisualTransition.明明这么重要,博客园上好像都没多少关于VisualT ...

  4. 想在网上保持匿名?教你用Linux如何实现!

    想在网上保持匿名?教你用Linux如何实现! 信息时代给我们的生活带来极大便利和好处的同时也带来了很大的风险.一方面,人们只要点击几下按钮,就能基本上访问已知存在的全部信息和知识:另一方面,要是这种权 ...

  5. JiaThis分享

    <!DOCTYPE html> <html> <head> <meta charset="{CHARSET}"> <meta ...

  6. 【CSS】 CSS 定位

    css 定位和浮动 *******本章大量内容copy自w3school********* 定位对于html界面还是很重要的,因为定位会直接影响到用户的视图.对于css而言,定位也比较灵活. 浮动是一 ...

  7. Algorithm --> 字符串中最长不重合子串长度

    例子 "abmadsefadd"  最长长度为7 "avoaid"           最长长度为3 思路 空间换时间hashTable,起始位置设为beg.初 ...

  8. selenium2自动化测试学习笔记(一)

    从这周开始学习自动化测试,采用selenium2,目标是在本月学习到appium,并测试公司的真实APP项目. 系统环境:win10 语言:python3.6.4 工具:selenium2 IDE:p ...

  9. Python下载图片小程序

    欢迎大侠们指正批评 思路: 1.引入相关的python文件(import re  import urllib) 2.读取对应网页的html文件(使用 urllib) def getHtml(url): ...

  10. 关于hadoop集群下Datanode和Namenode无法访问的解决方案

    HDFS架构 HDFS也是按照Master和Slave的结构,分namenode,secondarynamenode,datanode这几个角色. Namenode:是maseter节点,是大领导.管 ...