タグ

programmingとgitに関するt-wadaのブックマーク (5)

  • 第3回 ブランチvs.フラグ | gihyo.jp

    とっておきの変更 ソフトウェアをいつでもリリースできるようにしろと求める継続的デリバリの広まりにより、毎日のようにソフトウェアがリリースされるようになりました。早いうちからコードを野にさらせば、隠れた問題を前もって見つけることができるからです。 短いリリース間隔に身を置くと気づくことがあります。「⁠リリースできること」と「リリースしたいこと」は、必ずしも一致しないのです。たとえば大規模なビジュアルデザインの変更やとっておきの新機能を想像してみましょう。こうした粒度の大きい変更は、たとえ動作する、つまりリリース可能な状態でも、そのまま衆目にさらしたいとは限りません。期待を裏切らない形でお披露目したい、とっておきの変更があります。息を飲む新しい体験がもたらすユーザの驚きや喜びも、ソフトウェアにとっては大切な財産だからです。 とっておきの変更を仕上げるには時間がかかります。一方で、その仕上げが終

    第3回 ブランチvs.フラグ | gihyo.jp
    t-wada
    t-wada 2017/02/23
    フィーチャートグルの考え方を最初に知ったのは omo さんの連載だったけど、こんなに前のことだったんだなぁ…
  • git blameによるSRP(単一責任原則)の定量化 - どこでも見れるメモ帳

    はじめに ソースコードを静的解析することでSRP(単一責任原則)を定量的に算出します.*1 svn blameによるSRP算出*2を参考に、git blameによる算出をshで行ってみました. このSRP値が最大のモジュールが王様モジュールに相当します. # 単一責務性の違反指数(SRP) # SRP=R+U+((L/100)-5) # R:修正リビジョンのユニーク数 # U:修正ユーザのユニーク数 # L:モジュールのライン数 function get_SRP() { local target_filepath=$1 echo $(( \ $(git --no-pager blame --line-porcelain $target_filepath | sed -n 's/^summary //p' | sort | uniq -c | sort -rn | wc -l) + \ $(

    git blameによるSRP(単一責任原則)の定量化 - どこでも見れるメモ帳
    t-wada
    t-wada 2016/04/19
    git blame コマンドを使用して単一責任原則に違反しているファイルをリストアップする手法。修正リビジョンのユニーク数、修正ユーザのユニーク数、モジュールのライン数から違反指数を計算する。
  • Gitコミットメッセージの7大原則 - rochefort's blog

    タイトルは大げさです。割と当たり前の話です。 ハードディスクの整理中にRailscastsのメモが出てきまして 懐かしいなぁ、 Ryan Bates(@rbates)さん 元気かなぁと Twitterを覗いてみたところ How to write a Git commit message: http://t.co/D31dVh1lks— Ryan Bates (@rbates) 2015, 7月 28 なかなか興味深い記事をtweetされていました。 Git の commit messageに 規律をもたらそうぜ、ってのは どうやら日人だけじゃないようです。 元記事( How to Write a Git Commit Message ) Introduction 著者の過去と現在のcommit logを対比しています。 一貫して、この緑と赤の対比が見やすいので、記事も読みやすいです。 ま

    Gitコミットメッセージの7大原則 - rochefort's blog
    t-wada
    t-wada 2015/09/07
    "howよりwhatやwhyをbodyに記述しましょう。どうやって修正したかというのは、コード見れば分かるはずなので 理由について書きましょう" これがすごく大事
  • pull request を利用した開発ワークフロー

    pull request を利用した開発ワークフローの話しですが、あんまりプルリの話ししてないし、コードレビュー的なお話しが多いです…。

    pull request を利用した開発ワークフロー
    t-wada
    t-wada 2013/08/28
    WIP のプルリや MUST, IMO, nits レビューコメントとても良いな。中規模の設計変更をプルリで回すヒントをもらったので、早速取り込もう。
  • 本当はすごい codefirst の開発環境 - suer のブログ

    (記事は @suer, @mallowlabs, @mzp がノリノリで共同執筆しました!) 近代的なソフトウェア開発に必要なツールは3つある。 分散バージョン管理ツール ITS CI ツール 私はこれに AsakusaSatellite (以下AS)を加えたいと思う。 以上の4ツールを使用することによって、迅速なコミュニケーション、洗練された自動化をベースとした開発リズムを体験することができる。 このあとの節では具体的なユースケースをベースに、上記ツールの連携方法及びそのメリットをみていく。 ユースケース:開発中にソースコードの特定行で例外が発生した原因を探る ここは codefirst の開発室。 @suer と @mallowlabs と @mzp はリズム良くコードを書いています。 そんなとき、ビルドの異常を知らせるポップアップが表示されます。 さっそくAS 上でミーティングがは

    本当はすごい codefirst の開発環境 - suer のブログ
    t-wada
    t-wada 2011/06/21
    ウケルわー
  • 1