git方式更新blog

昨天立项flag,必须搞定git更新Hugo-blog,因为我发现由于历史文件过多,之前使用web方式更新的笨办法已经完全行不通了。hugo作为一个编译静态文件的blog程序,每当我新增一篇log,就有若干个文件发生了变化,如果我还用旧办法上传更新,简直要累死人。

学习任务分解

所以我决定好生学习一下git。但git众所周知对小白来说会遇到很多奇奇怪怪的问题,于是我将要搞定的步骤分解:

1. 搞定将Hugo源文件push到github远端仓库A中;
2. 将Hugo编译文件push到github远端仓库B中;

第一步其实以前以前搞过了,当时遇到了未知错误,中途放弃了,但今天在公司,有神级程序员加持,我怕什么?于是中午找来了belly辅导我,搞定:

git init
git remote add origin 仓库地址
git add .
git commit -m “更新说明”
git push -u origin master

当然过程远没有这么简单,我还先得搞定SSH密钥生成,远端绑定;又遇到了远端版本号低导致的push错误(但远端其实是空仓库),顺手百度结果为加一个”-f”强制覆盖搞定。源文件仓库同步的问题解决了。

解决编译文件仓库push

用前一个仓库push学到的知识又重新改hugo执行后编译文件,也就是静态页面文件的push,流程除了ssh都重来了一遍,但又遇到push失败的问题。经过belly指点,先把远端仓库pull下来,再push一遍,成功解决。

待解决和学习的问题

还没有解决的问题包括:

  1. hugo源文件执行编译后,生成的public文件夹不能push到源文件仓库去,需要手动删除后再push;解决办法一是把hugo编译生成的文件夹地址改变,但没搜到解决办法;二是push源文件时排除public文件夹,这个应该可以执行,不过这个命令我还没学,O(∩_∩)O哈哈!

  2. 下一步应该学习写一个可执行脚本, 简化写完log后的动作。 写作动作应该为: A. 创建新.md文件; B. 写作; C. 执行脚本更新代码仓库; 流程结束。

这篇文章其实是用来测试我的更新流程能否实施的。