顺便做个笔记,以防以后再踩坑;笔者用的是jenkins-1.620和git-2.7.2-64-bit.exe,操作系统是win10(本机)

  1. jenkins安装完成之后 如果想要配合git完成拉取代码、构建、自动发布文件、这几个需求是需要安装几个插件和相应的设置

  2. 点击jenkins=》系统管理=》管理插件=》可选插件,就能找到本次教程中需要的插件
  • git plugin —配合git进行源码拉取的
  • git client plugin —因为我用的存储库是git官网的,所以需要这个,如果是自己的git服务器则不需要
  • FTP publisher plugin—构建完成后将文件通过ftp发布至站点
  • MSBuild plugin —构建工具
  • Publish over ftp —发布工具
  • Git Parameter Plug-In—参数化构建,构建时选择分支

下面就开始配置这些插件

git

msbuild

Publish over ftp

好了下面就开始配置我们的第一个job了

Credentials没有的话点add新增(passphrase就是你生成ssh使用的那个,不然验证不会通过,ID和描述可以不填)

https://help.github.com/articles/connecting-to-github-with-ssh/ 生成ssh 教程的地址,网址比较慢

Build a Visual Studio project or solution using MSBuild

需要注意的是这个jenkins.pubxml,这个需要配合VS中的《enable  Nuget Package  Restore》功能<此功能在VS2015版本中不存在> ,来实现 jenkis使用的MSbuild4.0并且在生成NuGet之后需要在.config文件中添加一段固定的配置节

<packageRestore>
    <add key="enabled" value =" True" />
    <add key="automatic" value= "True " />
  </packageRestore>
  <activePackageSource>
    <add key="Microsoft and .NET" value="https://www.nuget.org/api/v2/curated-feeds/microsoftdotnet/" />
  </activePackageSource>
  <packageSources>
    <add key="nuget.org" value= "https://www.nuget.org/api/v2/ " />
  </packageSources>

接下来就是构建了,这时候需要依赖Build a Visual Studio project or solution using MSBuild步骤中的jenkins.pubxml文件了(而这个文件需要手动发布一次才会出现在properties=》PublishProFiles文件夹中《手动发布文件系统的过程不再赘述,请直接百度asp.net发布》),其中 jenkins.pubxml文件还需要提交到git中,以便msbuild读取,

Send build artifacts over FTP,这个步骤不需要特别的配置,目的就是把编译过的文件发送到ftp文件服务器里,《直接对应你站点的根目录就行》

点击保存,开始构建 ,第一次构建会很慢需要从git获取文件,验证,编译,发送,请耐心等待

参数化构建和普通构建有三处需要作出修改(配合Git Parameter Plug-In)

构建的链接就会变成

日志里可以看出请求的分支

蓝色是构建成功,红色是构建失败,构建的时候可以去看console log 每一步都很详细,这里不再赘述

后记:

需要注意的是《build a visual studio project or solution using MSbuild》中的 MSBuild File 路径  和

《set build artifacts over ftp》步骤中的  source files  、 Remove prefix 路径(会发送0fies)

是jenkins 对应job下的根目录,千万不要少一节,不然会报错

jenkins构建&发布git托管的VS工程的更多相关文章

  1. Gitlab + Jenkins 构建,发布一个基于Go的Gin测试项目

    部署Go项目简介 对于golang的发布,之前一直没有一套规范的发布流程,来看看之前发布流程: 方案一 • 开发者本地环境需要将环境变量文件改为正式环境配置 • 编译成可执行文件 • 发送给运维 • ...

  2. jira 改变issue状态触发jenkins构建/发布

    目录 jira中issue状态的改变触发Jenkins构建 jira中定制新的workflow,作为jenkins发布使用流程 大家可以参考我的这个workflow 设置workflow 使用Tran ...

  3. 【转】获取Jenkins构建时Git Change Log

    原文:https://www.jianshu.com/p/513ab6915dbd 在基于Jenkins进行CI持续集成的工作,在构建后上传蒲公英时想将本次版本的git commit信息同步到蒲公英的 ...

  4. jenkins构建docker镜像上传到harbor并发布到kubernetes

    很早之前写过一篇jenkins集成docker的文章,使用的是CloudBees Docker Build and Publish plugin插件.这篇文章是直接使用shell脚本做的,主要是这次有 ...

  5. jenkins 构建时显示git分支插件、显示构建分支插件

    参数化构建分支 1.安装插件:Git Parameter 2.找到我们在Jenkins中建立的工程,勾选“参数化构建过程”,并如下配置 3.在“源码管理”中如下配置 Jenkins构建完显示构建用户和 ...

  6. 通过jenkins构建服务,并发布服务,修改Jenkins以Root用户运行

    通过jenkins构建服务,并发布服务,修改Jenkins以Root用户运行 其他博文:从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布 Jenkins注册中心 一 ...

  7. Jenkins 构建自动化 .NET Core 发布镜像

    Jenkins 构建自动化 .NET Core 发布镜像 导读 在本章中,将介绍如何在 Linux 下使用 Docker 部署.启动 Jenkins,编写脚本,自动化构建 .NET Core 应用,最 ...

  8. jenkins构建成功,但war包没有发布到tomcat下

    如题,jenkins构建成功,在jenkins的workspace中有生成的war包,但没有发布到tomcat的webapps目录. 构建日志 找了很多原因发现应该还是项目相对路径不对导致的,我的wa ...

  9. Git+Jenkins+FileGee 发布php应用

    Git:做版本控制,回滚版本(coding.net) Jenkins:代码下载,提供webhook url FileGee:同步代码(一个国产同步.备份软件非常强大,而且便宜企业版只要498) jen ...

随机推荐

  1. Android - AndroidStudio 的熟悉

    开发环境 * JDK * SDK * AndroidStudio * Genimotioin HelloWorld [ 第一个Android项目建立 ] * 创建项目  [ 项目相关目录 ] Hell ...

  2. NSString 字符串

    0.字符串常用操作 自动补充方法:当字符串长度不够需要自动补充到一定的位数 OC字符串与C语言字符串之间的相互转换 1.不可变字符串的创建 // 直接创建不可变字符串 /* 在 OC 中,使用 @&q ...

  3. upper_bound下确界

    //uppper_bound上确界找出首个大于某值的元素 #include<algorithm> #include<iostream> using namespace std; ...

  4. Git 分支管理-git stash 和git stash pop

    https://blog.csdn.net/u010697394/article/details/56484492 合并分支,冲突是难免的,在实际协作开发中我们遇到的情况错综复杂,今天就讲两个比较重要 ...

  5. ASP 注释

    ASP.NET中使用HTML标准注释<!-- -->回导致程序崩溃,必须使用ASP标准注释<%-- --%>

  6. Linux安装步骤

    1.查看Linux系统是32位还是64位 #查看系统位数 getconf LONG_BIT #或者 uname -m #或者 arch #或者 file /sbin/init 2.IP配置 网络选择桥 ...

  7. 说Gradle

      说Gradle 刚开始认识Gradle这个名词是在蘑菇街的一场 交流会上,当时只是一个概念:第二面,是试图下载编译spring源码的时候:第三面,就是我司较真的安卓主程,有一天兴高彩烈的跟我说,我 ...

  8. maven 配置jetty 插件

    <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin ...

  9. C语言中一些术语的梳理_持续更新

    关键字.标识符.宏.预定义.预处理.编译.替换.预处理指令. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 标识符: ...

  10. Java json字符串对比

    public class JsonUtil { public static boolean compareJsonText(String str1, String str2) { return com ...