Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Cake定义版本并将项目推送到Github和MyGet

使用Cake定义版本并将项目推送到Github和MyGet
EN

Stack Overflow用户
提问于 2017-03-11 07:46:48
回答 1查看 265关注 0票数 1

我正在使用Cake构建一个带有ASP.NET文件的.csproj核心1.1。我需要将源代码推送到Github,并将包发布到MyGet。现在我有了剧本:

代码语言:javascript
运行
AI代码解释
复制
String target = Argument<String>("target", "Default");

Task("Clean").Does(() => {    
  if (DirectoryExists("./build")) 
    DeleteDirectory("./build", true);
  CreateDirectory("./build");      
});

Task("Restore").Does(() => {  
  FilePathCollection projects = GetFiles("./**/*.csproj");
  foreach(FilePath project in projects) 
    DotNetCoreRestore(project.FullPath);
});

Task("Build").IsDependentOn("Clean").IsDependentOn("Restore").Does(() =>   {  
  FilePathCollection projects = GetFiles("./**/*.csproj");
  foreach(FilePath project in projects) 
    DotNetCoreBuild(project.FullPath);
});

Task("Test").IsDependentOn("Build").Does(() => {
  FilePathCollection projects = GetFiles("./test/**/*.csproj");
  foreach(FilePath project in projects) 
    DotNetCoreTest(project.FullPath);
});

Task("Pack").IsDependentOn("Test").Does(() => {  
  DotNetCorePack("./src/MyProject.csproj", new DotNetCorePackSettings { OutputDirectory = "./build/MyProject/" });
});

Task("Default").IsDependentOn("Pack");

RunTarget(target);

我怎样才能做到以下几点:

  1. 根据csproj文件的版本增加修订号;
  2. 将项目推送给吉顿;
  3. 将包推送到MyGet。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-12 02:29:50

  1. 对于这种情况,我使用了GitVersionMagicChunks的组合,两者都有Cake别名可用。Gitversion用于断言回购文件的版本号,MagicChunks用于更新xml、json文件等的不同部分。
  2. 你能证实你在这里的确切意思吗?您是在说将更改复制回GitHub存储库中吗?如果是这样的话,您可能想看看Cake.Git加载子。或者,如果您正在讨论将文件推送到GitHub发行版,则可能需要查看GitReleaseManager别名。
  3. 一旦您拥有了NuGet包,就应该能够使用NuGetPush别名将包推送到MyGet。您需要设置来源类的NuGetPushSettings属性。

根据你的一些评论,我要稍微更新一下这个答案.

我通常不使用Cake将更改推回源代码管理存储库。相反,我在源代码管理存储库中进行的提交会导致我的构建被触发,通常使用某种形式的连续集成服务器(如AppVeyor或TeamCity )。这样,您询问的提交消息将始终为用户所知,因为他们正在进行提交,并且知道发生了什么变化。通过使用这种方法,在存储库中没有自动提交,我个人认为应该是这样的。

基于上述,您只需要您提到的发布目标。作为构建过程的一部分,GitVersion将断言版本号,并允许您使用该版本号创建NuGet包(然后不需要对存储库进行额外的提交),然后可以将其推送到NuGet.org和GitHub。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42737182

复制
相关文章
你知道如何安全正确的关闭线程池吗?
我们知道应用停机时需要释放资源,关闭连接,而对于一些定时任务或者网络请求服务会使用线程池,当应用停机时我们需要正确安全的关闭线程池,如果处理不当,可能造成数据丢失,业务请求结果不正确等问题。
纯洁的微笑
2019/10/18
5.6K0
你知道如何安全正确的关闭线程池吗?
有人知道如何提取matlab符号表达式系数吗?
调用方法:[C,T] = coeffs(___),C为返回的系数,T为对应多项式项
巴山学长
2019/12/27
4.8K0
21 - JavaScript 中少有人知道的技巧
原文链接:https://dev.to/bhagatparwinder/lesser-known-javascript-tricks-kjj
前端黑板报
2022/12/01
2220
你知道在iOS开发的工作中为什么有人4k有人40k吗?
  如果你有志于将iOS开发作为职业,或者已经是一位iOS开发者,那么你应该听说过唐巧的名字。唐巧,2012年从网易有道离开参与创业, 目前是猿题库iOS高级研发工程师。难得的是,他本身是一线的iOS开发者,同时又对iOS开发在国内的布道做了不少的工作,身影活跃于博客、微博、微信公众账号等地。从2011年以来,唐巧开始在博客分享自己写的iOS开发技术文章,CocoaChina 也曾多次转载过他的博客文章,后来他成为InfoQ兼职编辑,除了发表技术文章之外,还负责整理《iOS移动开发周报》,至今已有35期,他的微博和微信公众账号粉丝都超过1万,可以说是iOS开发领域的“大V”。并且他的新书《iOS开发进阶》已经和大家见面,也引得他的粉丝的一份热潮
Kris大鲨
2018/05/11
2.8K3
你知道在iOS开发的工作中为什么有人4k有人40k吗?
你知道Spring中BeanFactoryPostProcessors是如何执行的吗?
了解了BeanDefinition以及生命周期的大概概念之后,我们可以试着看一下源码!我们上一章也说到,BeanFactoryPostProcessors的执行时机是:在扫描完成之后,实例化之前!那么我们看一下Spring是如何去回调BeanFactoryPostProcessors的呢?
止术
2020/09/15
9650
你知道Spring中BeanFactoryPostProcessors是如何执行的吗?
如何关闭笔记本小键盘_笔记本电脑怎么关键盘灯光
您使用下面两个方法,都可以用来关闭触摸板:(1)请您“双击”触摸板左上角位置的小圆点,当指示灯为橙色时,表示触摸板关闭。(2)或者,请您点击开始—控制面板—鼠标—装置设…
全栈程序员站长
2022/11/05
2.5K0
如何关闭笔记本小键盘_笔记本电脑怎么关键盘灯光
如何使用NoNotifications关闭Ubuntu通知提示
在 Ubuntu 中连接个手机,连通有线或无线网络、有新系统更新时都会在桌面右侧弹出通知提示,这个功能本可以帮助用户实时了解系统和硬件工作状态的动态变化,但当你需要长时间专注工作时,这些可能会随机弹出的通知提示经常都会打断我们的工作和思路。如果你使用了 KDE Connect,各种消息更可能让你抓狂。
用户8710806
2021/06/09
2.1K0
你知道在springboot中如何使用WebSocket吗
  我们都知道 http 协议只能浏览器单方面向服务器发起请求获得响应,服务器不能主动向浏览器推送消息。想要实现浏览器的主动推送有两种主流实现方式:
用户2038589
2019/05/24
2.9K0
你知道关闭页面时怎么向后台发送消息吗?
这两天碰到一个需求:在用户刷新页面或者关闭页面的时候,前端要给后台发一条请求,释放该页面的授权占用。
编程三昧
2021/08/16
1K0
你知道关闭页面时怎么向后台发送消息吗?
开源组件清单 有人知道这个可以去哪里获取清单吗?
前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个ChatGPT数据提取的问题,一起来看看吧。
Python进阶者
2023/11/13
2150
开源组件清单  有人知道这个可以去哪里获取清单吗?
ubuntu关闭时间同步
虽然System clock synchronized: no,但是时间仍然在同步。因为还要重启一下服务。这一步特别重要。
超级大猪
2019/11/22
6.1K0
MyEclipse中如何隐藏关闭的项目?
问题描述:   我们有很多已经关闭的项目,不想让它显示,该如何办呢?如下图所示: 操作步骤: 效果如下:
黑泽君
2018/10/11
1.4K0
MyEclipse中如何隐藏关闭的项目?
小米笔记本怎么关闭secure boot
2、进入电源选项设置后,点击”更改当前不可用的设置”,再把”启用快速启动(推荐)”前边的勾去掉 (若没有该选择则不需要操作,直接略过进行第二步)。
周小董
2019/03/25
3K0
你知道 Java 中的隐藏类吗?
前几天给大家介绍了Java 17中新推出的密封类,今天继续给大家介绍一个Java 15开始推出的一个新内容:隐藏类。 如果你喜欢做封装、做框架的话,这个内容可能对你很有用哦! 什么是隐藏类 隐藏类,是一种不能被其他类直接使用的类。引入隐藏类的主要目的是给框架来使用,使得框架可以在运行时生成类,并通过反射间接使用它们。 可能有点抽象,不要紧,下面我们通过一个例子来直观的认识它! 如果你关注Java前沿知识,记得关注公众号:程序猿DD,持续分享前沿技术内容,积累普通技术人的弯道超车资本! 隐藏类案例 第一步:
程序猿DD
2022/05/09
7200
你知道Hive中的中位数吗
关于求解中位数,我们知道在Python中直接有中位数处理函数(mean),比如在Python中求解一个中位数,代码很简单。
数据社
2020/05/25
2K0
笔记本Ubuntu系统 开启Wifi
而目前的UBUNTU系统装机自带的无线网卡驱动大部分都是适用于博通公司(boardcom)
JNingWei
2018/09/28
2K0
联想计算机的功能键,联想fn键怎么用 联想fn组合按键功能介绍【图文】「建议收藏」
大家好,又见面了,我是你们的朋友全栈君。 Fn键是每个笔记本上都拥有的按键,熟悉电脑的朋友都知道,笔记本为了考虑到超薄便携的特性,因此显示器上并没有像台式机那样的控制按钮,因此使用按钮调节笔记本显示器
全栈程序员站长
2022/07/29
3.2K0
Ubuntu笔记本黑屏不休眠
但是发现一旦笔记本电脑黑屏之后代理就失效了,而且ssh链接不上,然后一查发现ubuntu黑屏会直接休眠。
小N同学
2022/05/12
1.2K0
Ubuntu笔记本黑屏不休眠
加速ubuntu开机速度
http://forum.ubuntu.org.cn/viewtopic.php?t=7505 原作者i3dmaster 译者yang119345 加速Ubuntu开机过程 此HowTo 适合抱
全栈程序员站长
2021/05/19
1.6K0
关闭Ubuntu提示欢迎语
Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-32-generic x86_64) * Documentation: https://help.ubuntu.com/ System information as of Fri Sep 23 09:31:54 CST 2016 System load: 0.3 Processes: 254 Usage of /: 2.3% of 114.
苦咖啡
2018/04/28
2.3K0

相似问题

有人知道DimScreen (亮度)用于ubuntu吗?

10

有人知道Ubuntu12.04中的OpenGL应用吗?

10

有人知道Ubuntu中的笔记和笔记本的替代品或本地应用程序吗?

20

有人知道如何改变火狐图标吗?

30

有人知道如何直播从树莓pi B+到ubuntu的高清视频吗?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档