最近我花了一点时间关注了在不同系统之中所用到的包管理器(Package Manager) 。最开始的时候,我是在使用Linux操作系统时,对这种工具以及它背后的想法深深迷恋住了:这真是自由的软件世界。全世界所有的开发人员都可以将自己觉得有用的组件或者软件发布到一个共用的地方,其他的所有人都可以很方便地按需取用。

让我们记住Richard Stallman 以及他提出并创立的GNU计划。http://baike.baidu.com/view/36272.htm

在Linux系统中,包管理器是如此强大,让人惊叹。据说这也是Linux之所以很安全的原因,因为几乎所有软件都可以免费地通过包管理器下载到,不需要东找西找(也就免去了中毒的可能性),甚至黑客们连去编写病毒的愿望都没有。

闲话少说,我就从Linux中的包管理器说起吧

apt-get

Ubuntu中,默认采用apt-get 作为包管理器

常见的命令:

  1. apt-get update
  2. apt-get upgrade
  3. apt-get install
  4. apt-get uninstall
  5. apt-get source

yum

CentOS中,默认使用yum作为包管理器,用法很类似,有兴趣的朋友可以参考 https://www.centos.org/docs/5/html/yum/

我大部分时间不用CentOS,这里就不截图了。

Nuget Package Manager

这是微软提供的一个包管理器。他提供了可以用于.NET开发平台的各种组件包的托管及管理。

【注意】它提供的只是组件,而且仅限于.NET开发平台用的。这些组件,通常是一些DLL,不能直接运行的,但可以用于我们在具体开发的项目中。

https://www.nuget.org/

https://www.myget.org/ (这是一个新的站点,目的是想做一个统一的包源管理中心,Create NuGet feeds, npm, Bower and Vsix repositories with your own packages and those from other package sources such as NuGet.org or Npmjs.com.)

如何安装

http://docs.nuget.org/consume/installing-nuget

最好是集成在Visual Studio中,

除了图形化,也有命令行模式

还有独立的命令行工具(nuget.exe)

官方也提供一个独立的图形化界面

chocolatey

https://chocolatey.org/

这个可以翻译为“巧克力”吗?呵呵。这个与nuget有本质的区别,nuget是提供了组件的包管理器(也就是说它提供的包,是包含了一些组件,本身是不能运行的),而chocolatey提供的是直接可以执行的程序,这一点是很类似于linux中的 apt-get 这个功能的

实际上,它是要基于.NET Framework 4.0和PowerShell才能运行的,也只能在Windows上面运行。

安装好之后,随便启动一个命令行(需要用管理员身份),然后输入choco,就可以看到当前的版本信息

通过choco list命令可以获取到当前所有的包的列表

通过choco install命令可以安装需要的包,例如choco install git

npm

npm is the package manager for javascript. https://www.npmjs.com/

这也是一个神奇的工具。它的背后是神奇的nodejs。https://nodejs.org/ ,所以简单地说,npm就是一个基于nodejs的包管理器,它管理的是javascript。

你需要知道的包管理器(Package Manager)的更多相关文章

  1. 【sublime】插件安装:包管理器——Package Control

    首先,按CTRL+`,打开控制台   粘贴下面的代码,之后回车 如果是sublime3 import urllib.request,os,hashlib; h = '7183a2d3e96f11eea ...

  2. 插件安装:包管理器——Package Control

    首先,按CTRL+`,打开控制台   粘贴下面的代码,之后回车 如果是sublime3 ? 1 import urllib.request,os,hashlib; h = '7183a2d3e96f1 ...

  3. [Visual Studio] 记一次排错:打不开 Nuget 包管理器里的安装package页面,无法 安装 / 恢复 包

    出差一阵子PC很久没用了, 回来在用Visual Studio (2017) 的时候, 工程里无法安装Package了  >_<    --- 也不知道电脑做了什么?--- Nuget包管 ...

  4. Node.js包管理器Yarn的入门介绍与安装

    FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT. 就在昨天, Facebook 发布了新的 node.js 包管理器 Yarn 用以替代 npm .咱 ...

  5. 使用Bower作为Web包管理器

    Bower是一个简单易用的Web包管理器,通过它我们可以非常简便的安装各种Web框架和库,同时它也负责管理不同包之间的关系依赖. 安装Bower Bower需要 npm 和 Git 的支持,在安装Bo ...

  6. #VSTS日志# 15/11/18 插件应用市场,RM,包管理器等

    [小编]从今天开始,我将在这个博客上连载Visual Studio Team Service的定期更新.VSTS是Team Foundation Server 的在线版本,微软每3周会对这个服务进行更 ...

  7. Swift 正式开源, 包括 Swift 核心库和包管理器

    Swift 正式开源!Swift 团队很高兴宣布 Swift 开始开源新篇章.自从苹果发布 Swfit 编程语言,就成为了历史上发展最快的编程语言之一.Swift 通过设计使得软件编写更加快速更加安全 ...

  8. Windows下安装Cygwin及包管理器apt-cyg(转)

    本文为转载文章: http://www.2cto.com/os/201212/176551.html Cygwin可以在Windows下使用unix环境Bash和各种功能强大的工具,对于Linux管理 ...

  9. 【转】包管理器Bower详细讲解

      包管理器Bower   今天自己用Angular写东西的时候,下载了Angular-seed项目,发现需要用到bower,之前也使用过,没有仔细了解,今天趁机了解到一些. bower的官网地址:  ...

随机推荐

  1. git上传代码到osc@git

    1.get an account 2.get a ssh-key 3.git setting git config --global user.name "...." git co ...

  2. 前端工具之-- Sublime

    开始学习前端知识,做一些笔记来记录下- 之前学习都是使用的dw 现在前端开发工具既轻便功能也够强大. 下面记录下常用的前端工具: Sublime3:需要安装第三方包,一般 Atom:继承度非常好 VS ...

  3. 关于DOM的一些笔记(二)

    1.选择符API (1).querySelector()方法 querySelector()方法接受一个CSS选择符,返回与该模式匹配的第一个元素,如果没有找到匹配的元素,返回null. 通过Docu ...

  4. SDOI 2016 数字配对

    题目大意:给定n个数字以及每个数字的个数和权值,将满足条件的数字配对,使得总代价不小于0,且配对最多 最大费用最大流拆点,对于每个点,连一条由S到该点的边,容量为b,花费为0,再连一条到T的边 对于每 ...

  5. 系统吞吐量(TPS)、用户并发量、性能测试概念和公式

    分享一个概念: http://www.ha97.com/5095.html

  6. SQL Server 变更数据捕获(CDC)监控表数据

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...

  7. 剑指Offer面试题:6.用两个栈实现队列

    一.题目:用两个栈实现队列 题目:用两个栈实现一个队列.队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能. 原文是使用 ...

  8. WebForms VS. MVC(翻译)

    (本文翻译自CodeProject上阿三写的一篇文章,原文地址:http://www.codeproject.com/Articles/528117/WebForms-vs-MVC,讲了有关ASP.A ...

  9. 探索C#之微型MapReduce

    MapReduce近几年比较热的分布式计算编程模型,以C#为例简单介绍下MapReduce分布式计算. 阅读目录 背景 Map实现 Reduce实现 支持分布式 总结 背景 某平行世界程序猿小张接到B ...

  10. c#语言-高阶函数

    介绍 如果说函数是程序中的基本模块,代码段,那高阶函数就是函数的高阶(级)版本,其基本定义如下: 函数自身接受一个或多个函数作为输入. 函数自身能输出一个函数,即函数生产函数. 满足其中一个条件就可以 ...