题
我在github上有一个仓库。最近,我发现了Github的页面,我想使用它们。
我想创建这个新的分支,然后,当我需要时,要么承诺 master
分支或开启 gh-pages
分支。
我怎样才能做到这一点?我必须在存储库中创建另一个文件夹吗?
解决方案
您可能会发现本教程有用:
设置GitHub页面“ GH-pages”分支和“主”分支作为父项目文件夹的子文件夹(“ Grandmaster”).
对我来说,这种方法似乎比做一个 git checkout gh-pages
每次您都想编辑GHPAGES内容。让我知道你的想法 ^_ ^
编辑: 我更新了教程链接 - 感谢@cawas。旧的tuotial(不建议)是 https://gist.github.com/825950
其他提示
最新版本的git可以替代 git symbolic-ref
钱德鲁解释的方法。这避免了必须使用较低级别的命令。
git checkout --orphan gh-pages
git rm -rf .
在您当地的克隆人中
git symbolic-ref HEAD refs/heads/gh-pages
rm .git/index
git clean -fdx
然后, git checkout gh-pages
并写下您的页面。 git push origin gh-pages
当您准备出版页面时。
还有另一个解决方案:忘记 gh-pages
和分支;将您的静态文件放在里面 /docs
目录,然后转到您的项目设置,并告诉GitHub服务 /docs
内容。
有关更多信息,请查看 这个
发布这样的静态网站:
git subtree push --prefix www origin gh-pages
在哪里 www
是静态文件所在的DOC根目录。您的静态网站现在居住在:https://[user_name].github.io/[repo_name]/
手动创建项目页面
如果您习惯使用命令行Git,则为项目添加新的页面是一个简单的过程。
https://help.github.com/articles/creating-project-pages-manly
您的GH页面和主分支是否具有完全相同的文件夹结构?如果是这种情况,为什么您甚至想拥有两个分支?只需维护一个GH页分支!但是,如果出于任何原因,您想拥有两个不断同步的分支,那么最好的选择就是使用 git rebase
. 。看这里:
http://lea.verou.me/2011/10/asily-keep-gh-pages-inc-nc-with-master/
您还可以樱桃只从主挑选所需的文件,然后使用特殊用例将其推入GH页面 git checkout
. 。看这里:
http://oli.jp/2011/github-pages-workflow/#gh-pages-workflow
http://nicolasgallagher.com/git-checkout-specific-files-from-another-branch/
不得不解决与同一问题的解决,我发现GH-PAGE通常最终会拥有与主人不同的代码库。换句话说,GH-pages仅应包括项目的DIST/BUILD/发布文件夹的内容,而Master将包括您的配置文件,未启示的脚本和样式等。
我的建议是创建GH页面 --orphan
分支机构,仅包括出版物就绪的材料。您将不得不在不同的本地目录中从主人中克隆,请使用 git checkout --orphan gh-pages
创建GH页面,然后使用 git rm -rf .
. 。添加了仅发布的文件后,您可以从那里继续并推到GHPAGE。有关更多信息,请参阅GitHub文档:
https://help.github.com/articles/creating-project-pages-manaly/
祝你好运
典型的方法是切换分支: git checkout master
如果您想从事硕士和 git checkout gh-pages
如果您想继续工作 gh-pages
.
从GIT 2.5开始,您可以同时(在不同目录中)同时检查两个分支。看 https://github.com/blog/2042-git-2-5-including-multiple-worktrees-and-triangular-workflows. 。设置通过 git worktree add -b gh-pages ../gh-pages origin/gh-pages
.
奖金:如果您的子目录的内容 master
结帐是 gh-pages
, ,使用提供的脚本 https://github.com/x1011/git-directory-deploy.