git blog: gitレポジトリからブログ記事のテンプレートを生成するコマンドを作りました
ダウンロード/インストール
git blog: generate blog template from git repository · GitHubからダウンロードして、パスの通ったディレクトリに配置してください。実行権限を与えることも忘れないでください。
動くかもしれないインストールスクリプトも貼っておきます。
#!/bin/sh wget http://gist.github.com/raw/207650/0aca47790fb3c304382762a07de42f092ddcd607/git-blog chmod a+x git-blog echo "please add 'export PATH=$PWD:\$PATH' to .bashrc"
使い方
gitレポジトリ内でgit blogを実行すると、ブログ記事のテンプレートを生成します。
$ git blog 2009-10-11: *log*[進捗]本日の作業履歴 ** 要約 ______ ** 本日のコミット |[http://github.com/mzp/scheme-abc/commit/670311693eb18027b2839897070a6de6bd6bdd84:title=670311693eb18027b2839897070a6de6bd6bdd84]|shuffle| |[http://github.com/mzp/scheme-abc/commit/0e17daf60adf855c1b2a22e12dc4e85cd5f1758a:title=0e17daf60adf855c1b2a22e12dc4e85cd5f1758a]|diary| |[http://github.com/mzp/scheme-abc/commit/d6fb7e91cd1a72080a3c95acf3d241a7342a3bbb:title=d6fb7e91cd1a72080a3c95acf3d241a7342a3bbb]|diary|
作業の要約は空欄になっているので自分で埋めてください。
あとは、はてなダイアリーにコピペすれば、ブログ記事が完成します。コピペが嫌な人は、はてダラとの併用がおすすめです。
技術的な説明
パスの通ったディレクトリにgit-hogeを置くとgit hogeで呼び出せることを利用してます。
あと、"今日のコミット"の取得は、git log --since=1.day
でやっています。
ソースコード
バックアップ的な意味で、ソースコードを貼っておきます。通常は、git blog: generate blog template from git repository · GitHubからダウンロードしたほうが便利です。
#!/usr/bin/env ruby # -*- coding: utf-8 -*- # parse commits = %x(git log --pretty=oneline --since=1.day).map do|line| line.split(' ',2) end.reverse today = Time.now # format github = commits.map do|rev,msg| "|[http://github.com/mzp/scheme-abc/commit/#{rev}:title=#{rev}]|#{msg.chop}|\n" end # print puts <<END #{today.strftime "%Y-%m-%d:"} *log*[進捗]本日の作業履歴 ** 要約 ______ ** 本日のコミット #{github} END