sass - 在没有版本控制工件的情况下发布到 github 页面?

标签 sass artifacts github-pages

有没有一种方法可以发布到项目的 gh-pages 分支, 版本控制在该分支中生成的 css/js?

例如,here是生成的 css 文件 desktop.cssgh-pages 分支版本历史。似乎每次更改和提交 scss 文件时,desktop.css 文件也会重新生成提交。这似乎没有必要存储。

我正在考虑使用 Sass 或 Javascript bundler 等 css 预处理器的项目中的并行。我们通常不会对生成的代码进行版本控制,因为它只是重复我们已有的数据(预编译/预捆绑代码)。例如,如果我们想回到较早的版本,我们将恢复较旧版本的 Sass,并从那里重新生成 css。重新生成早期版本的 gh-pages 页面也是如此,不是吗?此外,这些生成的文件还存在不必要的工件和膨胀到存储库的问题。

是否有一种变通方法可以在版本控制生成的 css/js 的情况下构建代码?我想到的一种可能性是每次我需要重新生成时清除和重新分支 gh-pages 分支,但这似乎很极端。有时我想知道 Github 是否应该提供 gh-pages 作为 标签 以及一个分支,以便我们可以在需要 Travis CI 时移动该标签以指向不同的提交或者你有什么要再生的。

其他人如何解决这个问题?还是这没什么大不了的?

更新于 2014 年 12 月 18 日星期四 19:28:16 EST

David 在下面给出了一个很好的答案,它是特定于 Jekyll 的,展示了一个 jekyll site with just scss但是谁的hosted github page是用生成的 CSS 构建的。看起来魔法就在 _config.yml 文件中。虽然我喜欢这个答案(并赞成它),但它并没有解决一般情况。

现在我想我会采用定期 git purge 方法。我将部署到 gh-pages 分支,让它对生成的 css/js 进行版本控制。然后每隔一段时间,如果我觉得 repo 变得过于臃肿,我将使用 git filter-branch 命令清空分支,如 explained by Github或者只是在本地和远程删除它并重新创建它。这样,我就可以灵活地使用我想要的任何静态站点生成器,根据需要调整和生成,并保持 repo 大小可管理。以额外几步为代价。

最佳答案

你可以看看Jekyll静态站点生成器 supported by Github page . native 使用 sass 和仅版本源文件。 干净!

关于sass - 在没有版本控制工件的情况下发布到 github 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27553567/

相关文章:

angular - Angular 中的 “which stylesheet format would you like to use (use arrow keys) ” 中缺少 SCSS 选项

css - 获取 Errno::ENOENT:没有这样的文件或目录@rb_sysop - styles.sss

模块与库与工件 : Whats the difference?

javascript - 如何在 Github Pages 上使用 Angular 2 建立网站

css - 如何让我的元素占据屏幕宽度的 100%,即使它位于占据屏幕 80% 的元素内?

css - SASS Optimize Font Awesome 仅用于使用的类

rest - 人工 REST API : How can I reassociate a build with a deployed artifact?

macos - Chrome渲染颜色怪异

github - 如何查看Github Pages的部署状态? (特别是:带有Jekyll的项目页面)

html - 如何在 github 托管站点中将我的 CSS 链接到我的 HTML