首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在gh-pages分支中访问master中的一些文件

在gh-pages分支中访问master中的一些文件
EN

Stack Overflow用户
提问于 2015-04-25 04:13:32
回答 1查看 390关注 0票数 1

我正在为我的项目创建一个GitHub页面站点。生成孤立gh-pages分支并清除该分支中的所有现有文件的GitHub advises。为了让我的站点正常工作,我需要在gh-pages分支中获得来自master的几个JSON文件的最新版本的副本(没有它们,jQuery $.getJSON()将无法工作,正如this question中所指出的那样)。

似乎(至少)有两种方法可以将文件从master导入到gh-pages中。

1.从master创建gh-pages分支,然后定期对gh-pages进行基址调整。

here总结了这种方法,this answer讨论了如何自动执行此过程。我认为这种方法的问题是,站点的历史现在与repo的其余部分的整个历史相关联,即使master中的历史对站点并不是特别重要。gh-pages分支可能还会从master获得许多站点不需要的内容。

2.使用git-checkout定期将需要的文件从master拉取到gh-pages中。

这种方法涉及git-checkout的非传统用法,如here所述,用于将文件从一个分支复制到另一个分支。正如GitHub所建议的,分支将是一个孤立的分支,但是仍然可以通过使用git-checkout将JSON文件包括在master中。我对这种方法的犹豫是,这意味着每次从master更新文件时,都会在gh-pages中创建一个提交,这似乎是无关紧要的,因为历史记录中会有一堆“从主更新JSON文件”的提交。

我倾向于不用担心额外的提交,而是使用方法2,但是有没有其他我应该考虑的方法?上面的方法有没有什么我可能忽略的重要的优点/缺点?

EN

回答 1

Stack Overflow用户

发布于 2015-04-26 19:28:32

Github页面处理

  1. 一旦拉到您的发布分支(用于项目存储库的gh-pages或用于用户存储库的master (例如: username.github.io)),您的站点将使用Jekyll processing生成。

  1. 另一个选项是指示github页面不使用jekyll处理,而只是从发布分支复制文件。这是通过在存储库的根目录下创建一个.nojekyll文件来完成的。

建议的流程

在您的例子中,想法可以是在gh-pages分支中对python脚本和网站文件进行版本控制。

代码语言:javascript
复制
|-- _python_scripts
|   |-- script.py
|   |-- ...
|-- index.html
|-- script.js
|-- dogs.json

使用第一个处理机制(使用jekyll),这将导致_python_script文件夹在发布时被忽略,而所有其他文件被发布。

结论

您有一个清晰的流程,以及用于数据收集、处理和呈现的提交历史记录。这是项目历史,从我的角度来看,数据历史与演示历史一样重要,甚至更重要。

我的两点意见。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29856640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档