我可以直接从GitHub运行HTML文件,而不是只查看它们的源代码?

如果我在GitHub存储库中有一个.html文件,例如,运行一组JavaScripttesting,有什么方法可以直接查看这个页面,从而运行testing?

例如,我能否以某种方式真正看到由jQuerytesting套件产生的testing结果,而无需下载或克隆回购到我的本地驱动器并在那里运行它们?

我知道这基本上将GitHub放在静态内容托pipe业务,但是,他们只需要改变他们的MIMEtypes从text/plain text/html

http://htmlpreview.github.com的替代scheme是http://rawgithub.com 。 它提供了一个更方便的方式来预览你的文件。

更新 :该网站已被重命名为http://rawgit.com

之前:

 https://raw.githubusercontent.com/[user]/[repository]/[branch]/[filename.ext] 

在你的情况下.html扩展名

后:

 https://rawgit.com/[user]/[repository]/[branch]/[filename.ext] 

在你的情况下.html扩展名

现在似乎也可以在生产中使用CDN ,这非常酷:

 https://cdn.rawgit.com/[user]/[repository]/[branch]/[filename.ext] 

你也可以服务的要点

之前:

 https://gist.github.com/[user]/[gist] 

后:

 https://rawgit.com/[user]/[gist]/raw/ 

CDN:

 https://cdn.rawgit.com/[user]/[gist]/raw/ 

有一个名为GitHub HTML Preview的新工具,它正是你想要的。 只要预先http://htmlpreview.github.com/? 到任何HTML文件的URL,例如http://htmlpreview.github.com/?https://github.com/twbs/bootstrap/blob/gh-pages/2.3.2/index.html

注意:这个工具实际上是一个github.io页面,作为一个公司并不隶属于github。

要搭载@ niutech的答案,可以制作一个非常简单的书签片段。
使用Chrome,尽pipe它与其他浏览器类似

  1. 右键单击您的书签栏
  2. 点击添加文件
  3. 将其命名为Github HTML
  4. 对于URLtypesjavascript:top.location="http://htmlpreview.github.com/?"+document.URL
  5. 当你在一个github文件视图页面( 不是raw.github.com )上点击书签链接,你就是黄金。

你可以分支gh-pages来运行你的代码或者试试这个扩展(Chrome,Firefox): https : //github.com/ryt/githtml

如果你需要的是testing,你可以将你的JS文件embedded到: http : //jsperf.com/

我对我的项目Ratio.js有同样的问题,这是我做的。

问题: Github.com通过将内容types/ MIME设置为纯文本来防止在查看源文件时渲染/执行文件。

解决scheme:有一个网页导入文件。

例:

使用jsfiddle.net或jsbin.com在线创build网页,然后保存。 在Github.com中导航到您的文件,然后单击“原始”button以获得文件的直接链接。 从那里,使用适当的标签和属性导入文件。

 <!DOCTYPE> <html> <head> <link rel="stylesheet" href="http://code.jquery.com/qunit/git/qunit.css" type="text/css" media="screen" /> </head> <body> <h1 id="qunit-header">QUnit example</h1> <h2 id="qunit-banner"></h2> <div id="qunit-testrunner-toolbar"></div> <h2 id="qunit-userAgent"></h2> <ol id="qunit-tests"></ol> <div id="qunit-fixture">test markup, will be hidden</div> <script src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript" src="http://code.jquery.com/qunit/git/qunit.js"></script> <script type="text/javascript" src="https://raw.github.com/LarryBattle/Ratio.js/master/src/Ratio.js"></script> <script type="text/javascript" src="https://raw.github.com/LarryBattle/Ratio.js/master/tests/js/Ratio-testcases.js"></script> </body> </html> 

现场演示: http : //jsfiddle.net/jKu4q/2/

注意:对于jsfiddle.net,您可以通过将show添加到url的末尾来直接访问结果页面。 像这样: http : //jsfiddle.net/jKu4q/2/show

或….你可以创build一个项目页面,并从那里呈现您的HTML文件。 您可以在http://pages.github.com/上创build项目页面。;

一旦创build,您可以通过http://*accountName*.github.com/*projectName*/访问链接。例如: http://*accountName*.github.com/*projectName*/

这是一个小Greasemonkey脚本,将添加一个CDNbuttongithub上的HTML页面

目标页面的格式为: https : //cdn.rawgit.com/user/repo/master/filename.js

 // ==UserScript== // @name cdn.rawgit.com // @namespace github.com // @include https://github.com/*/blob/*.html // @version 1 // @grant none // ==/UserScript== var buttonGroup = $(".meta .actions .button-group"); var raw = buttonGroup.find("#raw-url"); var cdn = raw.clone(); cdn.attr("id", "cdn-url"); cdn.attr("href", "https://cdn.rawgit.com" + cdn.attr("href").replace("/raw/","/") ); cdn.text("CDN"); cdn.insertBefore(raw); 

我想在github中编辑html和js并进行预览。 我想在github做到即时提交和保存。

尝试rawgithub.com但rawgithub.com并非实时(它的caching刷新一次)。

所以我很快开发了我自己的解决scheme

node.js这个解决scheme: https : //github.com/shimondoodkin/rawgithub

您可以通过修改响应 头来轻松完成此操作,这可以使用Chrome和Firefox扩展(如Requestly)来完成。

在Chrome和Firefox中:

  1. 安装请求的Chrome和请求为Firefox

  2. 添加以下标题修改规则

    在这里输入图像说明

    a) 内容types

    • 修改
    • 响应
    • 标题: Content-Type
    • 值: text/html
    • 源url匹配:/ /raw\.githubusercontent\.com/.*\.html/

    b) 内容安全策略

    • 修改
    • 响应
    • 标题: Content-Security-Policy
    • 值: default-src 'none'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; script-src * 'unsafe-eval'; default-src 'none'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; script-src * 'unsafe-eval';
    • 源url匹配:/ /raw\.githubusercontent\.com/.*\.html/

raw.github.com/user/repository 不再存在

要链接到github中的源代码,你必须使用github链接到原始源代码:

raw.githubusercontent.com/user/repository/master/file.extension

 <html> ... ... <head> <script src="https://raw.githubusercontent.com/amiahmadtouseef/tutorialhtmlfive/master/petdecider/script.js"></script> ... </head> <body> ... </html> 

此解决scheme仅适用于Chrome浏览器。 我不确定其他浏览器。

  1. 在Chrome浏览器中添加“修改内容types选项”扩展。
  2. 在浏览器中打开“chrome-extension://jnfofbopfpaoeojgieggflbpcblhfhka/options.html”url。
  3. 添加原始文件url的规则。 例如:
    • urlfilter:https:///raw/master//fileName.html
    • 原始types:文本/纯文本
    • replacetypes:text / html
  4. 打开你在规则中添加了url的文件浏览器(步骤3)。