如何在Github上发布页面?

时间:2014-04-18 00:29:21

标签: github

看起来很简单,我正在阅读很多内容,但我遇到了问题。

git add .
git commit -m "documentation improvements"
git push -u origin master
git push -u origin gh-pages

error: src refspec gh-pages does not match any.
error: failed to push some refs to 'https://github.com/danielfpedro/simple-modal
.git'

我缺少什么?

3 个答案:

答案 0 :(得分:5)

this文档可能有所帮助。即:

1)退出当前的回购并制作一个新的克隆:

cd ..
git clone https://github.com/danielfpedro/simple-modal.git simple-modal-webpage

2)创建一个gh-pages分支(没有任何父项)并从工作目录和索引中删除所有内容:

cd simple-modal-webpage
git checkout --orphan gh-pages
git rm -rf . 

3)添加内容并按

echo "My GitHub Page" > index.html
git add index.html
git commit -a -m "First pages commit"
git push origin gh-pages

推送到gh-pages分支后,您的项目页面将在danielfpedro.github.io/simple-modal

上提供

4)删除克隆的文件夹(simple-modal-webpage)并拉出原始仓库中的分支gh-pagessimple-modal):

cd ..
rm -r simple-modal-webpage
cd simple-modal
git fetch --all
git checkout -b gh-pages origin/gh-pages   #New git just use --> git checkout gh-pages

5)就是这样,现在你还有一个分支gh-pages。用它来为github网页提交更改:

git checkout gh-pages
<made changes to documentation>
git add .
git commit -m "documentation improvements"
git push -u origin gh-pages

答案 1 :(得分:2)

您是否在存储库中设置了新的“孤儿”分支?如果不是从您的存储库执行此操作:

git checkout --orphan gh-pages

创建一些内容:

echo "Sample" > index.html
git add index.html
git commit -a -m "Sample page"
git push origin gh-pages

现在你应该看到你的页面(几分钟后)。

答案 2 :(得分:0)

更新

如果您正在使用npm,请使用https://www.npmjs.com/package/push-dir 如果您正在使用其他内容来构建您的网站,则以下解决方案仍然有效。

OLD ANSWER

此方法并不强制您从.gitignore文件中删除build或dist文件夹。

#!/usr/bin/env bash

BUILD_DIR=build

git checkout -b _build_staging_
git add -f $BUILD_DIR
git commit -am add_build_ouput
git subtree split --prefix $BUILD_DIR -b gh-pages
git push origin gh-pages -f
git checkout -
git branch -D gh-pages _build_staging_

对于我的节点项目,我将其添加到脚本部分下的package.json文件中,并将其称为&#34; push&#34;这样我就可以在终端中执行npm run push以将构建的输出推送到gh-pages。