typecho本地上传头像_用ProGet搭建本地私有NuGet仓库

搭建ProGet

下载

官网下载Windows版本的Inedo Hub (https://inedo.com/proget/download)
下载下来的软件名: ProGetInstaller.exe

安装

点击ProGetInstaller.exe,出现如下安装界面dd1ca0c02fa306e0a24d03f390119ea6.png

Registration 选项选择 Free ;
SQL Sever 选项选择 Specify instance,添加Connection string:

Copy

data source=192.168.195.129;user id=sa;password=yourStrong(!)Password;MultipleActiveResultSets=True;

Database Name选项默认的数据库名称是ProGet(可以新建一个空库也可以不建,安装时,如果没有对应数据库,程序会自动创建数据库)
Hosting 选项默认选择 Intergrated Web Server ,就是以服务的方式安装。5a5c1b3033f0b1a67498801cc77d479f.png
添加成功后,SQL Server选项会显示选中刚刚新加的服务器IP地址818ba4fd855a0737e687b32c3c1dd980.png
点击安装后,输入名称和邮件地址来获取到免费的key。900271be5535282d575703a558f5143b.png

安装成功后的IndeoHub界面1b161b5d4378c44261ed312767cb9af4.png

在Services里面可以看到有两个服务正在运行,ProGet的服务和其Web服务。61305db7dddd6bf5e9640e029ed9101c.png

通过Windows的任务管理器里的服务也可以看到这两个服务。e39d38e66c584f47de674577079aaf23.png

InedoHub的Configuration界面是ProGet的相关配置信息,包括数据库链接字符串,Key,以及ProGet的网站端口号。c28a1f1311faa7e1a588e6aec15ba824.png

本机IP为192.168.1.48,所以访问 http://192.168.1.48:8624 ,出现如下界面说明ProGet安装成功。bc98a6c53e5c816dac687ef61c26223b.png

配置

点击网站的头像部分,然后点击登录1b5d01360c073825f35eb4e94f1cfdd0.png
网站的管理员账号及初始密码是Admin/Admin。981adadde308f31c2cad74f955e04dd4.png
登录管理员账号后,设置Task492d358ebcb705db363fbeb5dd34ed88.png

给匿名用户添加 Publish Packages (发包)权限。2667be2703878170d4c69f408fa35729.png
添加Connectors,添加NuGet官方配置79983abcbb1499d1d9e98641ed33c233.png
新增Feed,选择第三方包NuGet,Feed 名称为ZeroGet。32cba44825a2e830d6ba89fcecc290ea.png
新建成功d951fa10880e7a9c655dae31045b3db2.png

进入ZeroGet,我们会发现没有任何包,点击 Manage Feed 按钮,进入该Feed的管理界面,在Feed Connectors 项目里面,点击 add connector 按钮,选择先前新建的名叫Nuget的Connector。8f4b4a755155b94ed356df9292f46f51.png

再次进入ZeroGet的Feed界面,结果如下,我们把NuGet官网的包信息也同步过来了!763abd9342e7426199b1112364d01152.png

上传程序集

下载NuGet

NuGet官网下载地址 https://www.nuget.org/downloads
将下载好的nuget.exe放在特定的位置,例子的路径是 D:\Program Files (x86)\NuGet\nuget.exe

设置环境变量

如下图,编辑环境变量Path,新增nuget.exe的所在文件夹路径,这样cmd命令行就可以直接使用nuget命令进行相关的打包操作了dc4567f373dd3c6fdf06c2bdf99af186.png

项目打包
修改项目程序集信息

这里介绍的是简单的通过修改项目的AssemblyInfo.cs文件来修改程序集的发布信息。2f703c7fbc1c9b0cb5affa87c6951bb7.png
打开AssemblyInfo.cs文件,一般是修改如下内容就够了

Copy

[assembly: AssemblyDescription("这是描述的信息")]
[assembly: AssemblyCompany("Zero")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyVersion("1.0.1")]
[assembly: AssemblyFileVersion("1.0.1")]
项目打包

在打包之前,先编译生成一遍项目。
运行cmd命令行,进入到要打包的项目的.csproj文件所在目录下,运行如下命令

Copy

nuget pack -Build -Properties Configuration=Release

结果如下,成功生成Zero.Test.1.0.1.nupkg文件2c074f16dd19f82d2dbdd03538b97374.png

上传到本地仓库

在本地的ProGet网站的对应ZeroGet的Feed里面有添加包的 Add Package 按钮,点击后,提升如下四种添加方式,我们是通过NuGet的命令行来进行添加的,点击对应选项。0a978c22a33adf121e7927f07cc7ee2a.png
点击通过NuGet的命令行来进行添加的对应选项后,弹出如下提示内容。6f5dd106769e544dde6109fbf306005e.png
上面命令脚本如下,[API key]的选项是可选的,可以不填。

Copy

NuGet.exe push <package path> [API key] -Source http:

承接上面的具体操作,在成功生成nupkg文件后,运行下面的脚本

Copy

nuget push Zero.Test.1.0.1.nupkg -Source http:

结果如下图:2edb3fd9e107d8d08e91887464e05dc5.png
浏览器访问本地ProGet,显示信息如下29512dc1e0d1524da0d7addad130c18e.png
进入ZeroGet的Feed里面,我们可以看到刚刚本地新上传的程序集是置顶显示的。a58b444c3a3ced3c66671b4dab8ab53a.png
点击测试的程序集,查看程序集具体信息,作者信息,描述信息,版本信息都是我们程序里面编辑的。fa3a6d52b1bd60399b15edfff3354b63.png
查看程序集依赖和项目比较,也是一样的。

7e0cd76732d5e5a25f4a1daaa97e1a96.png630bd074c7e49bd300350864b439122a.png
OK,打包并上传成功,下面就是要本地项目使用刚刚的程序集了。

下载使用程序集

获取包源

在ZeroGet的Feed页面,显示有API endpoint URL:http://192.168.1.48:8624/nuget/ZeroGet/,
该路径就是ZeroGet的包源路径。06e05898762ea739c89a808d8408a7d0.png

添加包源

打开VS,工具》NuGet包管理器》程序包管理器设置278a6c3da1ad77af4270290cc3f279e7.png
点击NuGet包管理器下的程序包源,点击新增按钮,新增ZeroGet本地包源,如下图。3db57c86e8bf9c5c3a079c99ca180803.png

使用包源

在项目下,右击打开“管理NuGet程序包”,将程序抱怨切换到ZeroGet,如下图所示,我们就可以看到我们刚刚上传到本地库的程序集信息了。60dafb10a8237e8e61d47636f4a48751.png
点击安装后,自动安装该程序集以及它的依赖项。如下图。909efda0a55f87148de8d836af7afaed.png97faed89693f0015312f34cddfbeebd3.png

验证程序引用正常

下图是Zero.Test项目代码,简单的将对象转换成字符串类型。bda4a62320d838c8515d9b534b7cc6b6.png
下图是在控制台项目,用NuGet应用程序集Zero.Test后,调用Zero.Test.Convertor.GetObjString方法的执行结果,说明Zero.Test该程序集正常工作,引用正常。f38245118d6b607262610bf25e98f2b6.png

参考

  • https://docs.microsoft.com/zh-cn/nuget/tools/cli-ref-pack

  • https://docs.microsoft.com/zh-cn/nuget/reference/msbuild-targets

  • https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#nuget-metadata-properties

  • https://www.jianshu.com/p/429cce1323e2

  • https://www.cnblogs.com/lovecsharp094/p/5527204.html

原文地址:https://www.cnblogs.com/zerodai/p/10796535.html

.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com 7093ccc87f558f56f66ca3581daea92a.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值