git submodule 折腾记

git submodule折腾缘由

博客备份

给博客整体做个备份,包含主题配置,自定义的一些内容等

  • 由于主题themes文件夹内主题是从github直接clone下来的,所以下来后还是有.git,识别成了本地仓库。
  • 然而在hexo博客外部根目录创建git仓库后,执行到git add -A时,会提醒子仓库问题,不会跟踪记录子仓库。

具体折腾过程

直接git submodule add “path to theme”

  • 直接在根目录执行添加子模块,然而却不是想象的结果。

  • image-20200721212247431

    原本想象的是保留在原来的themes下,但是它直接clone到了根

  • google后,发现后边还跟一个路径(还是没好好看help文档),这个路径指向themes下的话,就还保留了原本位置。

    git submodule add “path to theme” “themes/butterfly”

添加后还是不track

  • image-20200721213854942

  • 再次google后,

  • image-20200721214002640

  • image-20200721214028218

  • image-20200721214055658

  • 递归执行子模块git add后并commit后,终于实现理想状态。

    然而,在从远程拉取后,又出现了一个问题。。。

git pull后,themes文件夹是空的?

git pull后,子模块内是空的!

  • image-20200721214439304
  • 而且github仓库文件夹出现了文件夹@字母
  • image-20200721214838006
  • 再再次google后
  • image-20200721214555139
  • 需要在子模块内再次拉取才行

思考

  • 面向google编程,面向成功~
  • 不想看文档,不想看帮助,那就多google
  • 不管结果如何,先把错误复制到google搜索一顿再说
  • 总之,google是走向成功的阶梯
  • “省力不省功”


References