`
超人二号
  • 浏览: 4414 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Rvm,gems,rubygems,bundle,gemfile,git,rake,

 
阅读更多
rvm,gems,rubygems,bundle,gemfile,git,rake,怎么这么多概念,都是干什么用的?

RVM(Ruby Version Manager): is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.

用于帮你安装Ruby环境,帮你管理多个Ruby环境,帮你管理你开发的每个Ruby应用使用机器上哪个Ruby环境。Ruby环境不仅仅是Ruby本身,还包括依赖的第三方Ruby插件。都由RVM管理。

保证了两个一致性:1.开发、测试、生产环境的基础Ruby环境一致。2.各个版本的Ruby都有与其完全匹配的第三方插件。



gems:At its most basic form, a Ruby gem is a package. It contains the necessary files and information for being installed on the system. Quoting RubyGems , ?a gem is a packaged Ruby application or library. It has a name (e.g. rake) and a version (e.g. 0.4.16)?.

可以叫做组件、库或包,里面包含了该组件运行所必需的各种文件和信息。当你用该第三方组件,你知道它是可靠的,因为它用清晰的结构自我描述,。


RubyGems: It is a package manager which became part of the standard library in Ruby 1.9. It allows developers to search, install and build gems, among other features. All of this is done by using the gemcommand-line utility. You can find its website at rubygems.org .

gems定义了包的结构,RubyGems是个工具,帮你管理单个包,包括搜索、安装、创建一个gems。他和RVM的区别在于:RVM维护一组gems,仿佛是一个基线,让这一组gems是彼此匹配的,而RubyGems帮你维护一个gmes。


bundle:We designed bundler to make it easy to share your code across a number of development, staging and production machines. Of course, you know how to share your own application or gem: stick it on GitHub and clone it where you need it. Bundler makes it easy to make sure that your application has the dependencies it needs to start up and run without errors.

bundle 相当于多个RubyGems批处理运行。在配置文件gemfilel里说明你的应用依赖哪些第三方包,他自动帮你下载安装多个包,并且会下载这些包依赖的包。


gemfile:定义你的应用依赖哪些第三方包,bundle根据该配置去寻找这些包。


git:Git is an extremely fast, efficient, distributed version control system ideal for the collaborative development of software.分布式版本控制软件配置管理 软件。


github:GitHub is the best way to collaborate with others. Fork, send pull requests and manage all your public  and private  git repositories.

是git的一个在线的代码仓库,网址github.com。


Rakefile : In a gem’s context, the Rakefile  is extremely useful. It can hold various tasks to help building, testing and debugging your gem, among all other things that you might find useful.


Rake:Rake包括了Rakefile,用于创建和执行某些任务。比如执行测试,比如创建 一个修改数据库的批处理任务。



将以上概念连接起来:

1.安装RVM :bash < <(curl -s )

2.用RVM安装出一个或多个Ruby环境:$   rvm install 1.9.2

3.用RVM指出现在使用哪个版本的Ruby环境:$   rvm use 1.9.2
4.用gem安装rails $   gem install rails (gem是ruby的内置的)
5. 安装后的rails,以一组gems的形式,存储在RVM1.9.2的环境仓库里。
6.用安装的rails,生成你自己的应用。  work>  rails new demo
7.用rake,生成rails的API文档, >  rake doc:rails
8.在rails生成的应用目录下,写自己的代码,用git进行版本控制。
9.需要新功能,安装新组件,在gemfile文件中添加需要的组件,并用bundle下载安装多个组件及其依赖的其他组件,这些组件仍然存储到RVM的gems库里。
10.用rake执行 生成、修改数据库,执行测试等要多次执行的任务。
分享到:
评论

相关推荐

    学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)

    RVM 用于帮你安装Ruby环境,帮你管理多个Ruby环境,帮你管理你开发的每个Ruby应用使用机器上哪个Ruby环境。Ruby环境不仅仅是Ruby本身,还包括依赖的第三方Ruby插件。都由RVM管理。 Rails 这个也不用多说,著名开发...

    deploy_rails:使用Shell脚本通过git更新远程服务器上ruby on rails应用,并执行bundle install、rake db

    使用Shell脚本通过git更新远程服务器上的rails应用,并执行bundle install、rake db:migration、asset precompile和重启unicorn... 尝试使用Capistrano进行部署,但是遇到了很多问题,比如配置错误、ruby版本不匹配...

    git-scm.com:git-scm.com网站。 请注意,此存储库仅用于网站; git本身的问题应转到https:git-scm.comcommunity

    Git主页 这是网站的Web应用程序。... $ GIT_REPO=../git/.git rake local_index 这将填充所有Git版本的手册页。 您还可以仅针对特定的Git版本(更快)填充它们: $ version=v2.23.0 $ GIT_REPO=../

    rubygems-1.6.2.tgz

    RubyGems是Ruby编程语言的一个核心组成部分,它提供了一个管理和分发Ruby库的框架。这个“rubygems-1.6.2.tgz”文件是一个压缩包,包含了RubyGems的1.6.2版本,这是一个早期但仍然重要的版本。在Redmine项目管理系统...

    Rails bundle命令安装mysql gem包出错的解决方法

    解决 Rails bundle 安装不上 mysql gem包的问题 环境 ubuntu 12.04 ruby-2.1.1 首先 新建一个的一个项目,在该项目上执行.../home/wh/.rvm/gems/ruby-2.1.1@xxx/extensions/x86_64-linux/2.1.0/mysql2-0.3.16/gem_make.

    redis_rvm和windows安装文件.gz

    在Windows上安装RVM,首先需要安装Git和MinGW或者MSYS2,因为RVM依赖于这些工具。安装步骤如下: 1. 安装Git:访问Git官方网站下载并安装Git for Windows。 2. 安装MinGW或MSYS2:这将提供一个类Unix的命令行环境,...

    有关rvm学习的一些资料

    **相关向量机(Relevance Vector Machine,RVM)** 相关向量机是一种统计学习方法,主要用于分类和回归任务。它是由Tipping在2001年提出的,是支持向量机(SVM)的一种变体,但采用了贝叶斯框架进行建模。RVM在处理...

    RVM-master_RVM_

    RVM(Relevance Vector Machine,相关向量机)是一种机器学习方法,它是支持向量机(SVM)的一种变体,由Tipping在2001年提出。RVM通过引入贝叶斯推断和稀疏性诱导机制,旨在解决传统SVM在大数据集上的计算复杂性和...

    issuehub.io:查找要解决的开源问题! (域更新)

    bundle exec rake spec 运行应用程序! bundle exec rackup 贡献 要做出贡献,请选择一个未解决的问题(如果存在),并尽最大可能修复这些错误。 您还可以改善界面,重构代码或提高测试范围! 如果还有别的东

    RVM配置ROR

    - 首先,创建必要的目录结构,并使用`git clone`命令克隆RVM仓库。 - 执行RVM的安装脚本。 3. **配置.bashrc文件** - 将RVM添加到shell启动文件中,确保每次打开新的终端时都能加载RVM环境。 - 使用`source ~/....

    java-jvm-JikesRVM

    JikesRVM,全称为“Jikes Research Virtual Machine”,是由IBM研发的一款开源、高性能的Java虚拟机,它采用纯Java语言编写,这在当时是相当独特的,因为大多数JVM都是用C++或类似的低级语言实现的。JikesRVM的设计...

    rvm安装资源,版本rvm 1.29.12

    rvm安装资源,版本rvm 1.29.12,rvm 1.29.12-next () by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io],可以直接使用,把文件下载后放到指定位置,然后加载资源就可以用了,加载资源的帖子一会...

    RVM理论深度讲义

    《RVM理论深度讲义》是一份专注于Relevance Vector Machine(RVM)的深度学习资料,由知名专家tipping所撰写。RVM是机器学习领域的一种重要算法,它结合了支持向量机(SVM)的高效性和贝叶斯方法的灵活性。这份讲义...

    rails 连接mysql的问题解决

    找不到指定的模块。... 您可能感兴趣的文章:Ruby rails 页面跳转(render和redirect_to)Rails link_to 详解rails常用数据库查询操作、方法浅析学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake,

    deezy:使用 Web 界面管理 ISC DHCPD 配置

    rvm rubygems latest-1.8 cd . bundle 没有 RVM git clone https://github.com/justinforce/deezy cd deezy bundle 配置 以通常的 Rails 方式配置您的数据库,然后 rake js # This will fail if you don'

    【RVM预测】基于相关向量机RVM实现数据预测附matlab代码

    【RVM预测】基于相关向量机RVM实现数据预测附matlab代码 相关向量机(Relevance Vector Machine,RVM)是一种机器学习方法,主要用于分类和回归任务。它是支持向量机(SVM)的一个变种,由Tipping在2001年提出。与...

    RVM.rar_RVM_RVM classification_RVM分类_RVM预测_rvm分类

    RVM,全称为Relevance Vector Machine(相关向量机),是一种机器学习算法,主要用于分类和回归任务。在本文中,我们将深入探讨RVM在分类和预测中的应用,并结合其核心概念进行详细阐述。 RVM是支持向量机(SVM)的...

    RVM.rar_RVM MATLAB 预测_RVM matlab_RVM 预测_RVM预测_相关向量机RVM

    相关向量机(RVM) 预测 MATLAB小程序

    安装rvm,把ruby版本提升至3.0.0

    本文将详细介绍如何安装RVM以及如何通过RVM将Ruby版本升级到3.0.0,同时也会提及在安装Redis过程中遇到的问题和解决方案。 首先,让我们了解RVM是什么。RVM全称为Ruby Version Manager,是由Mario Ilić开发的一款...

    rvm-1.29.9.tar.gz

    2. **安装依赖**:RVM需要一些依赖库,如GCC、curl等,可以通过 `sudo yum install -y gcc-c++ curl git libffi-devel sqlite-devel readline-devel libxml2-devel libxslt-devel` 安装它们。 3. **添加GPG密钥**:...

Global site tag (gtag.js) - Google Analytics