使用git submodules来公开网站的一部分内容
我最近在Netlify上创建了一个新的网站,我想在GitHub上公开其中的一部分,这样任何人都可以提交拉动请求,以纠正错别字,等等。
我在Hugo repo里有一个content
文件夹,我想公开的部分是一个叫handbook
的文件夹。
所以我为它建立了一个新的仓库,叫做handbook
。
我删除了上级版本库中的content/handbook
文件夹(如果你从新开始,你不需要这样做,但我想移动现有的内容)。
我提交了这些修改,然后我添加了子模块:
git submodule add https://github.com/flaviocopes/handbook
我在Netlify上部署了网站,它自动接收了这个子模块。
现在在本地我遇到了一个问题,因为它不像有一个符号链接到子模块仓库的文件夹。
我删除了content/handbook
文件夹,从子模块的本地仓库添加了一个符号链接:
# from withing the `content` folder
ln -s ../../../dev/handbook/
然后我用这个命令告诉Git停止追踪content/handbook
文件夹:
git update-index --skip-worktree content/handbook
(要恢复追踪,请使用--no-skip-worktree
)
这样我就有了两全其美的方法--一个子模块,同时在本地也有一个指向子模块的符号链接。
转载自:https://juejin.cn/post/7127867511877402660