Apr 13 2016
化繁为简的企业级 Git 管理实践(一):多分支子模块依赖管理

    化繁为简的企业级 Git 管理实践(一):多分支子模块依赖管理

    需求描述

    我们尝试使用 Git 来维护一个项目的代码。这个项目的结构比较复杂:

    • 项目包含由多个子模块,每个子模块是一个独立的 Git 仓库,子模块还允许继续嵌套包含子模块。 例如,主工程依赖 common、framework、react_native 等多个子模块,而 react_native 子模块又依赖 node_modules、HFCommon、HFModules 等多个嵌套子模块。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    [-] app_android/
    |-[+] HFUIKit
    |-[+] channel
    |-[+] common
    |-[+] framework
    |-[+] hybrid
    |-[+] messagecenter
    |-[-] react_native
    |-[+] HFCommon
    |-[+] HFModules
    |-[+] node_modules

    • 主工程和子模块允许存在多个分支,且相互之间有依赖关系。例如,主工程的 jilin 分支同时依赖 common 子模块的 master 分支,以及 framework 子模块的 jilin 分支。
Read More

Jun 1 2015
Speed Up the Rendering Process of hexo 3

    Speed Up the Rendering Process of hexo 3

    Hexo 3 自从放出更新到现在已经有很长一段时间了,相信很多人跟我一样都经历了一个非常曲折的升级过程。

    第一个问题是我所编写的主题和插件全都阵亡了,这个问题在我决定升级 Hexo 之前已经被很多用户轰炸过,于是我花了两个晚上的时间对所有的主题和插件进行了大幅修改和升级。

    另一个让我无比郁闷的问题是:官方虽然宣称 3.0 之后站点渲染速度更快了,但实际测试时我发现结果正好相反——全站 168 篇文章,在 Hexo 2.8.3 环境中渲染只需 3~4 秒时间,而更新到 Hexo 3.0 之后,网站的渲染居然花了一个多钟!

    为了找出导致这个问题的 bottleneck ,我通过二分的手段很快定位出了问题文章 《ArchLinux安装配置OpenGL》,这篇文章乍一看没啥特别之处,但问题就出在文中这段长长的目录结构图:

Read More

© 2017 Joseph Pan with help from Hexo and .