我现在有一个发布到GitHub页面的Jekyll博客的GitHub。当我最初设置它时,我在博客目录的根目录下初始化了git。这意味着我正在提交和推送所有Jekyll源文件,而不仅仅是静态呈现的内容。基本上,我想从
$~/writing/_site/作为根,而不是我目前正在推动的
$~/writing/我想要开始推到远程回购只是静态内容,把所有的源文件只在我的本地机器上。我曾经考虑过创建一个本地分支机构并改变一些事情,但我认为这并没有达到我的目的。这并不是我要更改内容本身,而是推送子目录而不是父目录。
我想我可以
$ git push --force从父目录开始初始化子目录下的repo并将其推送出去,但这似乎是一种粗俗的无知。
我可以git-push --force,将Jekyll源代码复制到另一个未跟踪的目录中,然后创建一个分支,并将所有源和git-rm的内容从子目录中复制到父目录中,但是这感觉就像用一块面包画油画一样。
发布于 2018-01-30 21:19:25
假设您希望继续对站点的源代码进行版本控制,那么您需要两个完全独立的Git存储库来完成您想做的事情。一个用于存储源代码,另一个用于存储由Jekyll在_site文件夹中生成的静态内容。
工作流应该是这样的:
jekyll构建您的网站(生成_site)\_site移动到repoB\您可能希望将5到8的步骤自动化,因为它们是乏味和重复的。为此,您可以使用无数的工具,如瑞克、大口吞下、咕噜等。
如果您使用Rake,您可能还想看看杰基尔-雷克。
发布于 2018-01-30 21:59:05
不要使另一个站点成为git存储库,也不要使用git来传输静态内容。作为torek的注释状态,git通信所有签入的内容(以及签入的内容)。相反,构建之后,您应该使用另一个工具(如scp或rsync )来传输内容。
https://stackoverflow.com/questions/48529047
复制相似问题