Git:存储但不拉取LESS文件

3
我最近开始使用LESS,发现使用Jenkins和Grunt等自动构建工具时,一个常见的建议是不要在代码仓库或生产服务器上存储LESS文件,只需存储编译后的CSS。

因此,我希望能得到一些关于这方面的建议。显然,由于LESS文件是项目的一部分,因此将它们存储起来是必要的。但是,在生产服务器上额外存在随机文件是没有意义的。每次构建都手动删除它们似乎不是正确的做法,而且也很费时间。我猜可以让自动化构建工具为我完成这项任务,但我还不知道如何操作。最简单的方法似乎是根本不将它们下载下来。

我是否对代码仓库的理解有误?我是否应该选择其他文件存储介质来存储LESS和其他文件?我已经不将PDF文件存储在代码仓库中,我是否应该对待LESS文件相同?我应该如何存储这些文件?

1个回答

1
冲突来自于聚合源管理和发布管理:您正在使用相同的参考来:
存储源(您可以从中构建包括编译CSS文件在内的发布版), 部署(发布过程的一部分)
文章“The Ideal LESS Workflow with git”建议使用预提交钩子以确保css始终与LESS更改同步,但这意味着在git仓库本身中存储生成的内容。
我宁愿:
推送到一个裸仓库 有一个post-receive钩子,会: 检出目标文件夹(live site)中的裸仓库 构建已编译的css(用lessc压缩) 删除所有less文件

谢谢你的建议。你是在建议手动操作吗? - Rohit
@RhoVisions 不是,我建议编写一个 post-receive 钩子脚本(使用您选择的语言),该脚本将进行检出、构建和删除操作,以便获取预期的目标实时文件夹。 - VonC
啊,好的,我以前从来没有做过这个,所以我想要去研究一下。 - Rohit
如果您的LESS文件不是源代码的一部分(只有CSS),那么您如何管理不同开发人员之间的LESS源代码更改?或者我是否错误地理解了您的答案? - pspahn
@pspahn,post-receive钩子不是用来从git仓库中删除LESS文件的,而是用来从目标部署文件夹中删除它们(在lessc之后,即生产环境中不再需要它们):这是一个发布管理过程,而不是开发过程。 - VonC
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接