构建现代的 .Net 应用离不开 Nuget 的支持,而快速打包 Nuget 成了提高生产率的有效方法。没有CI/CD?来试试使用windows右键菜单吧

先看右键效果图

有时候我们可能没有CI/CD的条件来自动发布nuget包,这个时候文件夹右键菜单就显得十分高效了

如图所示,直接在文件夹右键可以看到又nuget publish的菜单按钮

如何实现

具体的操作是修改 windows 的注册表,具体可以参考 windows 下如何修改右键菜单 一文

这里我写了2个注册表脚本分享一下

bata版发布:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Nuget]
@="Nuget Publish-beta" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Nuget\command]
@="powershell.exe -noexit -command Set-Location -literalPath '%V' ;powershell.exe -c \"echo $pwd;del *.nupkg ;$ver = -join ((Get-Date -format "yyyy.MMdd.HH.mm"),"-beta");dotnet pack --configuration Release --output $pwd /p:Version=$ver;$nupkg= dir *.nupkg; dotnet nuget push $nupkg -k nuget密钥 -s nuget地址;del $nupkg\""

正式版发布:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Nuget]
@="Nuget Publish-beta" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\Nuget\command]
@="powershell.exe -noexit -command Set-Location -literalPath '%V' ;powershell.exe -c \"echo $pwd;del *.nupkg ;$ver = Get-Date -format "yyyy.MMdd.HH.mm";dotnet pack --configuration Release --output $pwd /p:Version=$ver;$nupkg= dir *.nupkg; dotnet nuget push $nupkg -k nuget密钥 -s nuget地址;del $nupkg\""

搞定

将文本另存为 xxx.reg,双击即可导入到系统,然后重启 windows 资源管理器的进程(就是我的电脑的进程)。

然后右键就可以体验啦,搞定收工。

最后

欢迎大家体验评论,使用后欢迎各位给出更好的脚本方案评论

windows右键菜单自动打包发布nuget,没有CI/CD一样方便!的更多相关文章

  1. 发布nuget包的正确姿势---cicd自动打包发布nuget包

    最轻便的发布nuget包方式,方便cicd自动打包发布nuget包 首先新建项目 项目名随便取,这里就叫它GuiH.ClassLibrary 默认即可,需要改目标版本时,等创建好再改 项目创建好了 随 ...

  2. 在windows右键菜单中加入自己的程序 [转载]

    原文链接: http://blog.csdn.net/marklr/article/details/4006356  在windows右键菜单中加入自己的程序 标签: windowsattribute ...

  3. Windows右键菜单设置与应用技巧

    http://blog.163.com/lee_honleon/blog/static/555251522008014258896/   需要修改注册表,挺麻烦的.最好还是把迅雷卸了重装,不会影响什么 ...

  4. spring-boot 2.5.4,nacos 作为配置、服务发现中心,Cloud Native Buildpacks 打包镜像,GitLab CI/CD

    spring-boot 2.5.4,nacos 作为配置.服务发现中心,Cloud Native Buildpacks 打包镜像,GitLab CI/CD 本文主要介绍 Java 通过 Cloud N ...

  5. 使用release自动打包发布正式版详细教程

    昨天写了个release插件的版本管理,今天就在自动发布过程中遇到了许多坑,只能再写一篇自动发布详细教程,纪念我那昨日逝去的青春 (╥ _ ╥`) release正常打包发布流程按照如下几个阶段: C ...

  6. NET Core:搭建私有Nuget服务器以及打包发布Nuget包

    docker 安装 https://www.cnblogs.com/liuxiaoji/p/11014329.html 1.使用docker搭建私有Nuget服务器 docker run -d -p ...

  7. 使用Web Deploy自动打包发布

    在内部测试阶段,经常改一点小东西需要更新给测试继续测试.然后就需要频繁的找到对应更改的视图/JS文件,或者是编译的dll文件,再打开测试服务器找到对应站点替换进去,整套流程下来就非常的繁琐费时. 使用 ...

  8. .NetCore下利用Jenkins如何将程序自动打包发布到Docker容器中运行

    说道这一块纠结了我两天时间,感觉真的很心累,Jenkins的安装就不多说了 这里我们最好直接安装到宿主机上,应该pull到的jenkins版本是2.6的,里面很多都不支持,我自己试了在容器中安装的情况 ...

  9. mac下git+maven+jenkins自动打包发布

    随着springboot+springcloud(dubbo)越来越多人使用,流行的微服务的概念越来越深入人心.分布式部署越来越复杂,给手动发布带来很大工作量.为了方便前期测试和后期线上部署更新,可使 ...

随机推荐

  1. 关于ES6中Promise的应用-顺序合并Promise,并将返回结果以数组的形式输出

    1.Promise 基础知识梳理 创建一个Promise实例 const promise = new Promise(function(resolve, reject) { if (success){ ...

  2. Python之requests模块-hook

    requests提供了hook机制,让我们能够在请求得到响应之后去做一些自定义的操作,比如打印某些信息.修改响应内容等.具体用法见下面的例子: import requests # 钩子函数1 def ...

  3. MySQL——MySQL体系结构

    1.连接层 2.SQL层: (1)将接收到的SQL语句,解析成执行计划 (2)查询优化器 ---->选择最优的执行计划,交给存储引擎 (3)查询缓存: 缓存执行计划 (4)附加功能:权限. 语法 ...

  4. NOIP模拟50

    过分的神圣,往往比恶魔更加恶质. 前言 最大的一个收获就是不要动不动就码线段树,一定要审清楚题目之后再码!! T1 一开始理解错题了,以为答案是就是 \(\dfrac{\operatorname{le ...

  5. python使用UTF-8写入CSV中文乱码

    使用encoding='utf-8',写入的文档是乱码. 解决办法: 修改encoding='utf-8-sig' 关于文件open()函数: open(path,'-模式-',encoding='u ...

  6. word域实现动态填充信息附件下载

    1.问题描述:在页面上一些下载附件功能,点击触发执行下载操作时候,有些电脑的浏览器可以,有些电脑的浏览器下载不了,电脑打开弹出的下载框下载的不是一个文件,而是一个如jspx后缀名的页面,jspx后缀是 ...

  7. 硕盟SM-T54(TYPE C转HDMI+VGA+USB3.0+PD3.0)

    硕盟SM-T54是一款TYPE C转HDMI+VGA+USB3.0+PD3.0四口扩展坞,您可以将含有USB 3.1协议的电脑主机,通过此产品连接到具有HDMI或VGA的显示器.电视机或其他显示设备. ...

  8. 面试官:MySQL的幻读是怎么被解决的?

    大家好,我是小林. 我之前写过一篇数据库事务的文章「 事务.事务隔离级别和MVCC」,这篇我说过什么是幻读. 在这里插入图片描述 然后前几天有位读者跟我说,我这个幻读例子不是已经被「可重复读」隔离级别 ...

  9. 机器学*——K*邻算法(KNN)

    1 前言 Kjin邻法(k-nearest neighbors,KNN)是一种基本的机器学*方法,采用类似"物以类聚,人以群分"的思想.比如,判断一个人的人品,只需观察他来往最密切 ...

  10. WebView(网页视图)基本用法

    资料来源于菜鸟教程 啊这官方文档居然失效了,打不开.那我们直接就看相关方法: WebChromeClient:辅助WebView处理Javascript的对话框.网站图标.网站title.加载进度等! ...