gitの各種オプションの使用頻度を可視化

ソースコードはこちら https://gist.github.com/2651961
引数にzshhistoryファイルを指定して実行すると下のような解析結果が表示されます。bashとかで動くかは未確認。
残念ながら僕はzshに乗り換えたばっかりで500行しか履歴が溜まってなかったんだけどそれでも割と面白かった。できればもっと履歴の溜まっている人の解析結果が見たいな。すごく量が多くなってしまうって場合はif count < 2: breakの行を編集するといいかと。

僕のgitに関するコマンドの使用頻度(2回以上出現したもの)

add: 55
  -p: 14
  -u: 3
  js/main.js: 2
commit: 45
  -m: 41
    "add: 10 ←こういうシンプルなメッセージの時にcommit -mを使っているっぽい
    "fix: 4
    "clean: 2
    "make: 2
checkout: 24
  -b: 11
  master: 2
rebase: 13
  -i: 8
    master: 3
    js_insertion: 2 ←これはfeature branch
  --continue: 3
merge: 12
  --no-ff: 8 ←最近 --no-ffをつけるのが大事だと覚えた
reset: 11
  --hard: 3
branch: 10
  -D: 9 ← git branchを使う時はほぼ-Dでブランチを消すときのようだ
log: 8
  --oneline: 4
  --graph: 2 ←最近 alias gitlog="git log --graph --oneline" したんで使用頻度が落ちてる
cherry-pick: 6
status: 4
format-patch: 4
cherry: 3
clone: 3
  git@github.com:nishio/academy.git: 3
clean: 3
show: 2
diff: 2
init: 2
blame: 2

zshのfor文は便利だな

ちょっと2倍のサイズに拡大したいファイルが5つくらいあったんだけど、簡単。

f$ ls *.png
iPad_FREE_config.png   iPad_about.png         iPad_config.png        iPhone_FREE_config.png iPhone_about.png       iPhone_config.png

f$ mkdir out

f$ for i in *.png; do; echo $i; done
iPad_FREE_config.png
iPad_about.png
iPad_config.png
iPhone_FREE_config.png
iPhone_about.png
iPhone_config.png

f$ for i in *.png; do; convert -resize 200% $i out/$i; done

iPhoneアプリをバージョンアップする

よくよく考えたらいつも作りっぱなしでバージョンアップをしたことがなかった。

  • Add Versionする
  • 変更点を聞かれるので考えておく
  • スクリーンショットを足すなら用意しておく。前回時計の画面しか付けなかったのが失敗だったと思ったので各画面を撮影。シミュレータで画面コピーしてプレビューでCmd+N Cmd+S
  • スクリーンショットをアップロードしたらサイズが違うと怒られる。2倍のサイズの画像が要求された。zshでfor文とconvertを使う方法を調べて変換。
  • ArchiveしてValidate。Info.plistのバージョン番号を更新してないじゃないかと怒られる。すみません。修正して再挑戦。
  • Archive以降にもスクリーンショットのアップロードにも待ち時間があるから並列で作業したほうがいいな。と思って有料版のDistribute待ちの間に無料版のバージョンとスクリーンショットの追加などをする
  • 有料版のDistribute完了
  • 無料版のArchive。Verification Success。
  • 無料版のArchive待ちやDistribution待ちの間にブログに流れをメモしておく

以上で2ポモドーロ(1時間) 見積もりでは1ポモドーロの予定だったんだけど、画像サイズが違うってツッコミやArchive、Distributeに意外と時間がかかったことによって2倍に伸びてしまった。ま、見積もりの2倍3倍時間かかるのはよくあること。初めての作業だしね。次回以降この計測によってより正確に見積もることができるだろう。