Github不允许我将我的个人网站的来源改为gh-pages分支?

时间:2017-08-17 03:36:04

标签: reactjs github-pages

我之前使用github页面创建了一个个人网站,但最近使用ReactJS从头开始重新创建它。我更改了旧网站存储库的名称,并将我的新网址命名为username.github.io并将CNAME移动了。然后我开始关注:

https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#github-pages

但是,我在第4步遇到了问题,我应该将源代码更改为gh-pages分支。更改它的选项不可点击,并且在其下方显示"用户页面必须从主分支"构建。

我的想法是,这是因为我的存储库名为username.github.io,因此是一个用户页面。我猜这个教程可能是专门针对项目页面的吗?如果有所不同,我最初也有一个自定义域名。我想问题可能是我的主页设置不正确?我对如何设置主页感到有点困惑,因为我的应用程序(存储库)名为username.github.io。我在package.json上尝试了username.github.io/username.github.io和username.github.io作为主页,但它只是发布了我的自述文件。

2 个答案:

答案 0 :(得分:2)

必须在不考虑用户页面的情况下完成该教程:请参阅August 2016 ("Simpler GitHub Pages publishing")

现在,直接从master分支(或docs分支的master文件夹)为用户页面(不是项目页面)完成发布

https://cloud.githubusercontent.com/assets/849592/17782968/e1c51df0-6543-11e6-93fc-48417c6800de.png

facebookincubator/create-react-app issue 2976中所述:

  

您可以将源保留在另一个分支中,并在每次构建后将build文件夹的内容复制到master分支。
  我不认为你需要做什么特别的事情 - 只需要更多的手动步骤   也许你可以以某种方式自动化它。

答案 1 :(得分:1)

VonC的回答是正确的。但是,我想澄清并补充他的答案。项目的构建过程将构建到包含index.html文件的文件夹(dist / build / etc)。 Github正在寻找这个文件,而这个文件又(最有可能)查找其他文件,例如样式表,媒体以及用于构建网站的任何其他文件。

VonC所说的是,您可以将必要的文件复制并粘贴到根目录(打开项目文件夹时显示的内容)。推动它,它应该工作。

然而,这不是理想的解决方案。您每次要构建时都必须手动移动它。自动执行此过程的方法是使用符号链接将根目录中的文件连接到构建文件夹。这也不是很理想,但它确实有效!