我为GitHub Pages创建了一个简单的网站。网站的来源是" master"分支机构和生成的网站(我希望看到发布的内容)位于" gh-pages"分支。
我原本希望能够在设置中更改网站的来源。但是,设置是否为灰色?我无法改变它(见下面的截图)。我究竟做错了什么?如何切换到" gh-pages"分支?
答案 0 :(得分:27)
个人或组织网站由master
构建。 gh-pages
分支用于为项目构建站点。
据我所知,您使用的是https://user-name.github.io/网址,这是个人网址,因此master
分支是默认分支。
如果您的网站是具有名为
<username>.github.io
或<orgname>.github.io
,的存储库的用户或组织网页,则无法从不同位置发布您网站的源文件。具有此类存储库名称的用户和组织页面仅从主分支发布。
所以答案是否定的,你无法改变它。您必须调整工作流程并将开发保留在另一个分支(让我们称之为development
)并在您准备发布时合并到master
。
答案 1 :(得分:0)
好的,如果您使用angular-cli-ghpages
,默认情况下会创建一个新的分支gh-pages
并发布到它。
现在作为首发,像我一样,如果您使用的是 https://user-name.github.io/ ,并希望您的应用从 user-name.github.io
<的主分支发布/ strong>您可以按照以下步骤操作。
使用
制作生产就绪版本ng build --prod --base-href "/user-name.github.io/"
使用
使用angular-cli-ghpages
部署到主
angular-cli-ghpages --branch=master
希望这有帮助。
答案 2 :(得分:0)
FWIW,这是我使用Next.js和gh-pages发布个人页面(即https://user-name.github.io
)时使用的设置:
develop
)next build && next export
.nojekyll
中放置一个touch out/.nojekyll
标记文件gh-pages -t -b master -d out
您可以将以下命令捆绑在package.json
中,以方便使用yarn deploy
命令:
scripts: {
...
"build": "next build",
"export": "yarn run build && next export",
"deploy": "yarn export && touch out/.nojekyll && gh-pages -t -b master -d out"
...