【发布时间】:2016-02-19 11:37:13
【问题描述】:
我有一个github 项目,它有自己的项目页面。在这个项目的master 分支中有一个目录html,其中包含项目页面的文件。所以,例如项目https://github.com/con-f-use/foobar 有一个文件./html/index.html,可以通过https://con-f-use.github.io/foobar/index.html 访问。
到目前为止,当我在 master 分支中更改 html 时,通常我会通过以下命令更新项目页面(git 需要在其自己的分支 gh-pages 中):
git subtree push --prefix html origin gh-pages # From master branch
我想配置 git,以便在每次向 master 推送内容时自动更新。可选地它会很好,但最终不重要,如果它也以相反的方式工作。所以我可以推送到gh-pages 并且master 得到./html 中的更改,而无需我手动摆弄。我知道 git 允许指定提交后脚本。我可以将上述命令放在其中一个脚本中。问题是,我必须为存储库的每个本地克隆手动指定此脚本。我宁愿让 github 在非本地做。
有没有办法配置 github 以使 master 分支中的 ./html/ 目录自动与 gh-pages 分支的根 ./ 保持同步(反之亦然)并执行无需我更改本地 git 配置?
所以我想要的是,每当我推送到gh-pages 时,master 分支中的./html 也会得到更改。同样,当我在master 的./html 目录中推送新更改时,这些更改应自动传播到gh-pages 根./ 目录。
【问题讨论】:
标签: git github configuration github-pages