可以跨部门参考吗?
我在 Github 上有一个个人项目。我的主要文档是 master 分支中的一堆文本文件,我会自动从它们生成一些 HTML 页面。 Github 将存储库的网页保留在一个名为 gh-pages 的单独分支中。我希望该页面引用我生成的 html 文件。 是否可以在另一个分支上硬链接/导入文件,以便当我更改 master 中的文档并重新构建 html 文件时,gh-pages 分支也是最新的?
I have a personal project on Github. My main documentation is a bunch of text files in my master branch, and I automatically generate some HTML pages from them.
Github keeps the webpage for the repo in a separate branch called gh-pages. I want that page to refer my generated html files.
Is it possible to hardlink/import a file on an another branch, so that when I change my docs in master and rebiuld the html files, gh-pages branch is also up to date?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这里有两点不同:
我的做法是让两个本地存储库跟踪两个分支(
master
和gh-pages
),并让您的生成过程将 master 生成的文件放入工作目录中gh-pages
。然后在第二个存储库中使用一系列 git add、git commit 和 git push 来更新在线 gh-pages。实际上,我只是尝试过这个,没有两个完整的本地存储库,而是一个具有两个工作目录的存储库,使用
git-new-工作目录
。然后是从 master/javadoc 到 gh-pages/javadoc 的符号链接(没有版本控制,但被忽略),以在正确的位置创建文档。(结果是我的 jsch-documentation 存储库。)
You have two different points here:
My take would be to have two local repositories tracking both branches (
master
andgh-pages
), and let your generating process put the generated files from master into the working directory ofgh-pages
. Then use a series of git add, git commit and git push in the second repository to have the online gh-pages updated.Actually, I just tried this, with not two complete local repositories, but one repository with two working directories, using
git-new-workdir
. Then a symlink (not versioned, but ignored) from master/javadoc to gh-pages/javadoc), to create the documentation at the right location.(The result is my jsch-documentation repository.)
您需要手动跟踪从 master 分支到 gh-pages 分支的文件。 但是这应该很简单,只需围绕“git merge”或更可能的“gitcherry-pick”编写一个快速脚本,您可以在提交更改后立即运行该脚本大师。
You'll need to manually track the files from the master branch to the gh-pages branch. But this should be simple to do by writing a quick script around either ''git merge'' or more likely ''git cherry-pick'' that you can run immediately after committing your changes to master.
或者您可以使用子模块并检查子模块所需的版本。
另外,如果您不介意编写一个小脚本,您可以执行一个干净/涂抹过滤器,它将在您的源中扩展一种“关键字”,并在签出/签入时自动使用您需要的实际参考值
参见 http://progit.org/book/ch7-2.html (man gitattributes);不确定 github 是否允许您执行任何钩子或属性过滤器。我想,检查一下他们的常见问题解答
Or you can use a submodule and check out the desired version of the submodule.
Also if you don't mind writing a little script you can do a clean/smudge filter that will expand a kind of 'keywords' in your sources with the actual reference values you need automatically on checkout/checkin
See http://progit.org/book/ch7-2.html (man gitattributes); Not to sure whether github allows you to execute any hooks or attibute filters. Check their FAQ, I suppose