最近我花了一点时间关注了在不同系统之中所用到的包管理器(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. SElinux对一些服务关系的影响

    kerberos 允许系统使用kerberos  setsebool -P allow_kerberos 1 setsebool -P krb5kdc_disable_trans 1 service ...

  2. CF2.D

    D. Santa Claus and a Palindrome time limit per test 2 seconds memory limit per test 256 megabytes in ...

  3. DSY2748*音量调节

    Description 一个吉他手准备参加一场演出.他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量.在演出开始之前,他已经做好了一个列表,里面写着在每首歌开始之前他想要改 ...

  4. CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境

    安装篇: 一.安装Apache yum install httpd #根据提示,输入Y安装即可成功安装 /etc/init.d/httpd start#启动Apache 备注:Apache启动之后会提 ...

  5. Hadoop学习笔记—1.基本介绍与环境配置

    一.Hadoop的发展历史 说到Hadoop的起源,不得不说到一个传奇的IT公司—全球IT技术的引领者Google.Google(自称)为云计算概念的提出者,在自身多年的搜索引擎业务中构建了突破性的G ...

  6. iOS开发系列--C语言之基础知识

    概览 当前移动开发的趋势已经势不可挡,这个系列希望浅谈一下个人对IOS开发的一些见解,这个IOS系列计划从几个角度去说IOS开发: C语言 OC基础 IOS开发(iphone/ipad) Swift ...

  7. Windows Azure Storage (22) Azure Storage如何支持多级目录

    <Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Azure Blob有三层架构.如下图:(注意blob.core.chinacloudapi ...

  8. Inter Core CPU 型号的尾字母含义

    Inter Core CPU 型号的尾字母含义: M:表示移动处理器(Mobile Processor):QM:四核移动处理器(Quad Mobile Processor):U:超低电压处理器(Ult ...

  9. How To Use Goto?

    看到,网上很多人对于goto的询问, 因为本身在工作中经常使用到,所以写下此文, 如有错误, 请指出. 本人写博文的时候主要从事C++工作 对于goto的态度,本人目前成长如下: 学生时代 老师课堂上 ...

  10. ASP.NET Web API自身对CORS的支持: EnableCorsAttribute特性背后的故事

    从编程的角度来讲,ASP.NET Web API针对CORS的实现仅仅涉及到HttpConfiguration的扩展方法EnableCors和EnableCorsAttribute特性.但是整个COR ...