在开发模式下运行“rake assets:precompile”,但不要创建不必要的文件

时间:2016-10-17 16:56:35

标签: ruby-on-rails ruby git gitignore

每当我推动制作(而不是Heroku)时,我都会

rails assets precompile phase failed

我想添加一种方法强制我的同事检查他们的css代码,因此我要求他们全部运行

rake assets:precompile

甚至在进入分支之前,所以他们都确保他们没有做任何CSS语法错误。 Git始终生成public/assets文件夹,我不想将其添加到我的git存储库中,因此我在gitignore - >中添加了以下行: public/assets。 Evan,git并不想忽略public/assets中的文件。有没有办法忽略生成到此文件夹中的文件?生成后他们有另一条路径吗?

2 个答案:

答案 0 :(得分:2)

  

git不想忽略来自公共/资产的文件

这种情况正在发生,因为您/您的团队成员已经将public/assets提交给了回购。 enter image description here概述了从您的存储库中删除不需要的文件/文件夹所需的基本命令

  1. 提交所有当前更改
  2. 运行git rm -r --cached .以重新删除已更改的文件
  3. 然后像往常一样运行git add -Agit commit -m 'fixes .gitignore'
  4.   

    我想添加一种强制我的同事检查他们的CSS代码的方法

    您还可以使用其中一个持续集成工具(例如This answer)的构建监控系统自动执行此操作。每当您的团队将任何内容推送到回购时,CI客户端就可以在您应用的scss-lint目录上运行app/assets/stylesheets,并rake assets:precompile以确保新代码库不会“破坏”任何部分你的应用程序

    有关CirclCi的Rails持续集成的更多信息:CirclCI

答案 1 :(得分:0)

答案:RAILS_ENV=production rake assets:precompile行可以添加到项目的Travis CI配置文件的.travis.yml中,每当推送到Github时,Travis都会为您付出艰苦的努力!如果此命令失败,构建将失败!