【问题标题】:Compass/Sass writing files with "No Access" permissions for Everyone group on OSXCompass/Sass 在 OSX 上为所有人组写入具有“无访问”权限的文件
【发布时间】:2014-04-30 04:24:59
【问题描述】:

我正在使用 Sass 和 Compass(在 osx 上)并使用“compass watch”来编译我的 .scss 文件。编译运行正常,因为 .css 文件是用正确的内容创建的。但是,查看权限表明该文件是用“Everyone”组写入的,因为它具有“No Access”,导致 css 没有出现在页面上。当我手动更正权限时,一切都很好,但是任何后续保存都会导致指南针再次用“无访问”权限覆盖文件。

我不确定这里的问题是我的 config.rb(但我不这么认为),还是 sass 子目录中的权限。我已经删除了 .sass-cache 并重复了设置。 compass 是如何获得写权限的?

任何帮助将不胜感激。

谢谢,史蒂夫

【问题讨论】:

    标签: css sass compass-sass


    【解决方案1】:

    显然这是 Compass 0.12.4 的 Sass 实用程序的一个已知问题:https://github.com/chriseppstein/compass/issues/1615#issuecomment-38332287

    Sass 修复出现在最新版本中,但我认为我们将不得不等待 Compass 0.12.5。

    【讨论】:

    • 感谢马特的链接。使用一小时前由 chriseppstein 发布的 gem install sass --version "~> 3.2.18" ,我仍然无法获得可读文件。我也尝试过 {gem update --system, gem update, bundle install, compass clean}
    • ...我想我刚刚完全理解了你的第二段。在功能上和概念上,我不再将 Sass 和 Compass 分开,但您是说 Chris Eppstein 的修复依赖于 Compass 的更新?
    • 老实说,我不确定。我对这些工具非常陌生,并且听到了许多相互矛盾的报告;我刚刚从 Compass 过渡到尝试多种还原版本组合。
    【解决方案2】:

    虽然不是解决方案,但测试 Compass、Sass、目录权限是否有问题的是完全在项目结构之外创建一个新目录,并在该项目的终端中运行以下命令

    compass create
    compass watch
    

    然后我检查了生成的 css 文件是否具有读取权限。

    在我的情况下,他们具有预期的读取权限(每个人:读取),所以我得出结论,这与原始项目的目录权限有关。作为修复,我在另一个位置重新创建了目录结构,复制了与 CSS/SASS 无关的文件,然后再次使用 compass create、compass watch 来生成 css。

    我认为这与当前的 Sass 问题无关

    【讨论】:

      【解决方案3】:

      RVM 对我来说是一种解决方案。

      我在 OS X Mavericks 上使用本机 Ruby 安装时遇到了同样的问题。像你一样,我尝试了在我最初遇到同样问题的工作项目目录之外创建一个独立的测试指南针项目的方法。 Compass 仍然生成所有其他人都无法访问的 css 文件。

      我的解决方案是安装 RVM 和 Ruby v.2.1.1。然后我以正常方式安装 Compass,甚至不需要使用 sudo 安装。

      这只是一个未经证实的猜测,但可能通过本机 Ruby 安装和运行 gem 要么不适合非系统用户,要么版本 2.0.0 与 Compass 0.12.4 存在权限问题。

      【讨论】:

      • 感谢本的回复。我刚开始这个项目很方便。如果再次发生,将按照您的建议尝试使用 RVM 和 ruby​​。
      猜你喜欢
      • 2015-02-23
      • 1970-01-01
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-17
      相关资源
      最近更新 更多