首页 > 如何在不同项目中使用不同版本的 Compass

如何在不同项目中使用不同版本的 Compass

之前的项目一直是稳定版的 Compass 0.12.6,但是这个版本是 2 年前的已经很旧了,很多 Sass 的新特性无法编译,比如:

#main {
  color: black;
  &-sidebar { border: 1px solid; }
}
is compiled to:

无法编译成:

#main {
  color: black; }
  #main-sidebar {
    border: 1px solid; }

但使用 Sass 可以编译成功,所以我在想升级到 compass 的最新 alpha 可能就能解决了。所以我想知道:

  1. 如何让两个版本的 compass 共存?
  2. 如何对不同的项目指定不同版本的 compass 进行编译?

不知道你本地的 Ruby 环境是如何管理的?假设你用了 RVM,那么就可以利用现成的 gemset 功能。简单地说就是为不同的项目创建不同的 gemset,每一个 gemset 里可以安装不同的 gems/相同 gem 的不同版本,而 RVM 会负责帮助你自动/手动切换 gemset。

如果你没有用 RVM(或 rbenv 等拥有 gemset 管理功能的工具),那么你可以使用 Bundler 来为每个项目管理依赖,这也是一种很好的办法。

如果上述工具你都没用过,也没那么时间和能力去掌握,那就用最原始的办法好了。 rubygems 本来就支持安装和使用多版本的 gem,假设你安装过两个(或更多)版本的 compass,那么默认的 compass 命令将会是最新版本的;如果要指明其版本,可以这么写:compass _0.12.6_ ...

这是最简单的办法了,你可以写个 shell 脚本简化命令行的输入。

【热门文章】
【热门文章】