🕰️ 吾方初释yard-timekeeper之v0.1.0,乃一小RubyGem,专用于Ruby之项目,以验所生之YARD HTML于git。
此物解一特异之文牍之扰:唯时间戳之更迭。
其弊
若尔之项目,自一已检入之docs/目录,发所生之YARD文牍,汝必见此:
- 尔运行文牍之务。
- 庭园再生HTML。
- Git报变文件。
- 尔察异文。
- 惟变者乃页脚时戳。
此非文牍之变,乃建时之噪。
凡项目将生成文档置于版本控制之下者,此法致不必要之差异,引喧哗之拉取请求,增审阅之劳。亦使难察文档实变之时。
yard-timekeeper所为之事
yard-timekeeper运行于YARD生成HTML之后,检视docs/**/*.html之下所追踪之文件。
若文件之变唯 footer timestamp 所生,则自 git 复原之。
若页有真内容之变,则文件任之。
其旨非藏文牍之变也。其旨乃去唯刻时之扰,而存要义之讯。
安顿
gem install yard-timekeeper
或以 Bundler 加之:
bundle add yard-timekeeper
設置
所支持之流程,乃通過 rake yard,故而 YARD 既毕,則後處理之鉤可啟行。
於汝之 Rakefile 或文獻任務設置:
require "yard/timekeeper"
Yard::Timekeeper.install_rake_tasks!(:yard)
乃生文牍,以:
bin/rake yard
无.yardopts插件之入口,此集成无需之。若尔尝试--plugin timekeeper,当去此作业,而用rake集成之。
行为
yard-timekeeper本意持重:
- 惟後處理
docs/**/*.html耳。 - 惟復git所跟蹤之檔。
- 惟復其差異僅在時間戳之檔。
- 能保存實際生成之文檔變化。
- 可藉
YARD_TIMEKEEPER_DISABLE=true禁之。
是故新篇之文、已删之页、实有增删之页,皆可睹于git也。
存此之由
吾所持之Ruby宝石甚夥,其中多者以检入之HTML生成YARD文档。吾欲文之生成可复,而不欲于提交中杂以时戳之变也。
此等微器虽不炫目,然可助日常维护之便。差分洁净则审阅易,审阅易则谬误少。
链接
- GitHub(IT之家)https://github.com/galtzo-floss/yard-timekeeper
- Ruby文档:https://www.rubydoc.info/gems/yard-timekeeper
- 文檔:https://yard-timekeeper.galtzo.com
yard-timekeeperv0.1.0已面市矣。
🕰️ 愿尔文牍常新,而异同之辨寂然。













