GitHubで全部済ませたい
新卒入社以降4年ほどアジャイル開発ってのをやってます。
今までチーム活動にはRedmineやJira,手書きの付箋&ホワイトボード等々を使ってきましたが、
最近GitHubを中心に考えたらいろんな悩みが解決したのでまとめてみようと思いました。
ネタリスト
大分類それぞれが各記事へのリンクになっています
ドキュメント管理
- [readme.md] ドキュメントを管理する
- [github wiki] Wikiを管理する
公開
- [gist] 簡易コード片やMarkdownを公開する
- [gh-pages] 静的なファイルを公開する
自動化
- [github webhooks] GitHub上で特定のイベントがあった時にAPIを呼び出す
- [githooks] Gitの特定のコマンド発行の前後でスクリプトを実行する
- [jenkins github pull request builder] PullRequestがマージされる際にJenkinsでビルドする
課題管理
- [milestone] Issueの対応期限を明示する
- [issue link, pull request link] IssueやPullRequestを紐付ける
- [fixes commit] PullRequestのマージ時にIssueを自動的にクローズする
- [git template for issue] Issue作成時の説明欄にテンプレートを設定する
- [git template for pull request] PullRequest作成時の説明欄にテンプレートを設定する
- [saved replies] レビューコメントのテンプレートを設定する
- [search box] リポジトリ内の何かを検索する
ZenHub
- [story] ストーリを作ろう
- [estimate] 見積もろう
- [board] かんばんを使おう
- [chart] バーンダウンチャートを見よう
- [epic] ストーリをまとめよう
- [pipeline] ストーリの対応時期を管理しよう
満足していないこと
- 予定管理
極力GitHubでやるようにして良かったこと
ネタ数の多さからわかる様に、課題管理は他のツールより劇的に優れていると思いました。
Issueの相互リンクや自動クローズは他ツールに比べて(当然ながら)簡単にできますし、テンプレート機能はとても良いです。
他の良い点として、議論や情報が散らないというのが大きいです。
| 従来 | GitHub中心に変えた結果
:-- | :-- | :--
議論 | メールやメッセンジャで行う | スレッドを作る感覚でIssueを作成する
課題管理 | 課題管理表に追記する | テンプレートを用いた明瞭なIssueにLabelやMilestoneを設定する
かんばん | Jiraにチケットを作成する
メールや課題管理表の内容を転記する | ZenHubのおかげで、先に作ったIssueがそのままストーリになる
レビュー | PullRequestだが情報が少ない
またGitHubにはこの部分しか表れない | 同じくテンプレートを用いたPullRequestに関連Issueを明記する
相互リンクなので関連Issue側からもPullRequestが参照出来る
仕様書 | ファイルサーバのエクセルを修正する
改版履歴の様な資料を更新する | Markdownで記述する
PullRequestに含めてレビューを受け版管理もする
課題管理 | 課題管理表を更新する | fixes commitで自動的にIssueをCloseする
かんばん | Jiraのチケットを更新する | Issueなので、fixes commitで自動的に完了する
通知 | 各所に完了通知を出す | 自動で完了通知を飛ばす
あとはMarkdown良いですね。
圧倒的に書きやすいし、header-tag
,a-tag
,list
,checkbox
,syntax-highlight
くらいを知っていれば十分です。
テーブルも簡単に書けちゃうしね ヘ(・_|
GitHubでの課題管理やZenHubを使い始めてまだ1月弱くらいしか経っていないので、さらに思うことがあれば追記したいと思います。