查看特定分支上的github页面的更改

时间:2016-08-13 06:14:41

标签: git github github-pages

我目前有我的github页面存储库b.github.io,它是从a.github.io分叉的。 a存储库使用主分支来发布网站的内容。

现在,我想通过我的存储库ab做出贡献。因为我对分支管理有诚意,所以我希望将我的工作分成不同的分支:somebranchanother等。

现在,如果我对这些分支中的任何一个进行了更改,它们就不会反映到我的Github网站上(b.github.io显示master的内容,它与a.github.io同步)。在调用Pull请求之前,我需要查看这些更改以检查我的更改是否成功。

如何查看单独分支的变化?我尝试了b.github.io/tree/somebranch这样的事情,但没有取得多大成功。

2 个答案:

答案 0 :(得分:0)

首先,我认为没有办法只在github页面上查看另一个分支。但是,如果另一个分支是您的主分支,则可能存在查看该站点的选项。

如果b存储库的唯一要点是测试您的更改,只需停止以保持两个主分支同步并将您的更改提取到主分支中以在b.github.io上查看它。

你可以将任何其他分支推送到b的主分支,然后在b.github.io上查看它(假设b作为远程添加到本地存储库):

git push b somebranch:master

请注意,如果远程主服务器包含不在您本地分支中的提交,则会失败。在这种情况下,您可以使用-f选项强制执行推送。但是要非常小心这样做,并确保远程不包含任何将丢失的提交。要做到这一点,你可以做一些事情:

首先确保从b遥控器获取所有更改并显示主分支的最后一次提交:

git fetch b
git show b/master

从该提交中选择提交哈希,然后检查它是否包含在任何其他分支中:

git branch -a --contains {hash}

这将显示包含该提交的所有分支(远程或本地)。只要您只将不同的本地分支推送到b / master,这将始终显示您上次推送的本地分支。

如果您无法使用存储库b的主分支,则可以选择创建单独的存储库以查看更改并创建项目站点,如下所述:https://pages.github.com/ 但是,在这种情况下,您始终需要将更改推送到分支gh页面。为此,请按照上述主分支进行操作。

我不确定您为什么需要通过github页面观看您的网站。如果您的站点只是静态的,您可以使用在本地计算机上运行的Web服务器(例如nginx或Apache)对其进行测试。如果您正在使用Jekyll,github provides a documentation如何自己运行它。

答案 1 :(得分:0)

在调用Pull请求之前,我需要查看这些更改以检查更改是否可以解决。

现在(4年后的2020年7月),您可以从任何分支机构查看第二个仓库(在执行PR之前)的更改。
它仍处于测试阶段,但是:

Build and deploy GitHub Pages from any branch (beta)

使用GitHub Pages的存储库现在可以从任何分支机构构建和部署

发布到特殊的gh-pages分支仍然可以像以前一样工作,但是现在您可以在存储库中选择另一个分支作为发布源。

此功能还消除了对具有master分支的用户和组织页面的硬编码依赖性。

9月。 2020年:this is out of beta