我将开始使用grunt-rev& grunt-usemin使用grunt-watch来满足我的Web开发需求(特别是RESTful Web App)。
我有一个本地开发机器,它将运行grunt-watch以在我的JS文件上附加修订标识符。我将git commit
和git push
我的树发送到git仓库,然后向生产服务器询问git仓库中的更改git pull
,以便向网络访问者展示。
问题是我不希望我的git repo在每次提交时存储不同的文件名(由于grunt-rev
)。那会很糟糕,因为那样我就无法在提交之间做git diff
而不会让我的屏幕充斥着出现和消失的文件的内容,而且它可能(有时)占用更多存储比只存储文件的小差异。
我看到的唯一解决方案是在build
中添加包含版本化文件名的.gitignore
目录,以便不在git中存储这些文件(具有不断变化的文件名)。但这不意味着我必须在我的生产服务器上运行grunt-watch
,以便生成带有版本化文件名的build
目录吗?但这很复杂:新进程必须在远程服务器上运行,可能在处理文件时出错的可能性很小。不是我希望的解决方案。
你们有人有另一种解决方案吗?你有什么建议我做的?
答案 0 :(得分:1)
我要解决此问题的方法是在提交和部署新文件之前删除以前的“构建”文件。不需要保留已生成的旧文件,因为您始终可以使用源文件(使用git)重建它们。