仕事ではタスク管理にGithub issueを使っていて、最近はブランチを作る際にfeature/1234
といったように名前にissue番号を使うようにしています。最初はどのissueに関連したブランチなのか分かりやすくしたくて始めたんですが、CLIツール・alias設定を組み合わせて以下のフローも楽に行えるようになりました。
テンプレートを使ってissueリンク付きプルリクエストを作る
プルリクエストを作成する際は必ず対応するissueへのリンクを貼るという運用を行っているんですが、ブランチ名にissue番号を入れておくことでこれがコマンド一発で完結できるようになりました。やり方は下記の記事を参考にさせてもらいました。
GitHub Issueはテンプレート化で、綺麗に書かせる! - Qiita
[alias]
pull-request = "!hub browse -- compare/develop...$(git symbolic-ref --short HEAD)?body=%0A%23$(echo $(git symbolic-ref --short\
HEAD) |awk -F'[/_-]' '{print $2}')%0A%0A%23%20Before%0A%0A%23%20After%20%0A%0A"
エンコードされててよく分からない感じですが、git pull-request
とすると以下のようなプルリク作成ページが開かれて、issueへのリンクも貼られた状態になります。
これまでは対応するissueの番号を探してプルリクの本文に貼り付ける、という事をやっていて地味に面倒だった・・
カレントブランチに関連するissueの内容をさっと確認する
stephencelis/ghiを使って関連するissueの内容を確認できるようにしています。issue番号をブランチ名に入れておく事を前提に、下記のようなaliasを設定してgit issue
と叩くだけでブランチに対応したissueの内容が見れるようにしています。
[alias]
issue = "!ghi show $(echo $(git symbolic-ref --short HEAD) |awk -F "/" '{print $2}')"
すごく些細な事ですが、お陰でブラウザでGithubを開いてissueを確認する頻度が減りました。タスク管理にissueを使っている人は試してみるのもアリかもしれません。