Closed lujun9972 closed 4 years ago
EGO 的简化版本,去掉了很多感觉不必要的东西,跟之前的版本比有如下改动
合并了 ego-current-project-name 和 ego-default-project-name 这两个变量,目前 ego-current-project-name 的作用就是以前的 ego-default-project-name.
而ego不再保存上一次发布的项目是什么,因为上一次发布的项目不见得就是这次要发布的项目,我觉得保存上一次发布项目反而使代码变得复杂。
在同一个目录里面通过不同分支存储html和org文件,意味着要使用一个临时目录保存html再拷贝回原目录,我觉得这个拷贝的操作完全是费操作,而且当博客内容很多的时候拷贝速度也不快。
另外在目录中切换分支也容易把仓库搞乱,索性简单点使用单独的一个目录来存储html,该目录和原目录分别对应远程仓库中的不同分支。这样不仅节省了拷贝操作,而且无需在进行分支的切换了。
有的时候会在另一台机器上写博客,而在本机上忘了同步上游仓库导致合并仓库时出现冲突
根据UNIX哲学,只做一件事情,把这件事情做好。我觉得EGO只需要实现把org文件转换成html博客就好,预览功能作用不大。
而且Emacs上实现的web静态服务器太过简陋,如果真的想要预览,可以用专业的web服务器来实现,比如
docker run -dit --name my-apache-app -p 8080:80 -v "${STORE-DIR}":/usr/local/apache2/htdocs/ httpd:2.4
vc-git本身实现了很多git操作,可以复用这些操作而无需自己实现。
毕竟翻墙不方便啊
通过在html branch中存储org file和html的对应关系来实现删除org file也能够删除对应的html file
之前的操作是直接commit,但是有时候我可能有写到一半的博客,不想提交上去发布,所以先stash会比commit更合理一些
@kuangdash @Liu233w @tumashu
cool
大神,看看能不能merge啊
EGO 的简化版本,去掉了很多感觉不必要的东西,跟之前的版本比有如下改动
不保存上一次发布的项目
合并了 ego-current-project-name 和 ego-default-project-name 这两个变量,目前 ego-current-project-name 的作用就是以前的 ego-default-project-name.
而ego不再保存上一次发布的项目是什么,因为上一次发布的项目不见得就是这次要发布的项目,我觉得保存上一次发布项目反而使代码变得复杂。
用另一个单独的目录存储html结果
在同一个目录里面通过不同分支存储html和org文件,意味着要使用一个临时目录保存html再拷贝回原目录,我觉得这个拷贝的操作完全是费操作,而且当博客内容很多的时候拷贝速度也不快。
另外在目录中切换分支也容易把仓库搞乱,索性简单点使用单独的一个目录来存储html,该目录和原目录分别对应远程仓库中的不同分支。这样不仅节省了拷贝操作,而且无需在进行分支的切换了。
发布前先git pull同步一次上游仓库
有的时候会在另一台机器上写博客,而在本机上忘了同步上游仓库导致合并仓库时出现冲突
去掉Emacs中的静态web服务
根据UNIX哲学,只做一件事情,把这件事情做好。我觉得EGO只需要实现把org文件转换成html博客就好,预览功能作用不大。
而且Emacs上实现的web静态服务器太过简陋,如果真的想要预览,可以用专业的web服务器来实现,比如
docker run -dit --name my-apache-app -p 8080:80 -v "${STORE-DIR}":/usr/local/apache2/htdocs/ httpd:2.4
尝试用vc库代替git
vc-git本身实现了很多git操作,可以复用这些操作而无需自己实现。
gitalk替换评论系统
毕竟翻墙不方便啊
实现delete org file处理
通过在html branch中存储org file和html的对应关系来实现删除org file也能够删除对应的html file
repo-dir切换到org branch前先用stash保存未提交内容,切回原branch后再unstash
之前的操作是直接commit,但是有时候我可能有写到一半的博客,不想提交上去发布,所以先stash会比commit更合理一些