LoginSignup
37

More than 5 years have passed since last update.

息をするようにプルリクするための6つのGitの使い方

Last updated at Posted at 2015-02-09

ブログ記事に「息をするようにプルリクするための6つのGitの使い方」をまとめました。

こちらは短めにその概要です。元記事の方にはサンプルスクリプトや実行例を追加しています。

1. 最初は空コミット

git commit --allow-emptyを実行すると空のコミットを作ることができます。

作業を始める時はまず空コミットでプルリクを作って、実装中のメモ書きをしたりしています。

なお、このプルリクにはWIP(Work in progress)ラベルをつけて作業中ということがわかるようにしています。

2. コミットメッセージにチケット番号を含める

git commit -m 'TICKET-123 コミットメッセージ'のようにコミットの先頭にチケット番号を追加するようにしています。

これでチケット番号でプルリクを検索しやすくなりますし、次のプルリクエストメッセージ作成の自動化にも役に立ちます。

なお、チケット番号の入力はチケット番号を自動的に追加するgit hookを使って自動化しています。

3. プルリクエストのテンプレートを使う

プルリクエストのタイトルや内容を毎回入力するのは面倒なので、テンプレートを自動作成するシェル関数を作っています。

例えば

$ pr-url
https://github.com/haracane/sample/compare/master...develop?title=TICKET-123&body=...

という感じにURLを出力するようにしていています。

4. レビューを受けたらgit rebase -iで空edit

プルリクを出したら次の機能をどんどん作っていきます。

そうするとだいたいプルリク後にコミット追加した後でレビューが返ってくることになります。

レビュー内容を反映するには過去コミットを追加します。

具体的にはgit rebase -iで空editしています。

5. 過去コミットをpushする

レビュー内容を反映したらプルリク中のブランチが新しいコミットを指すように変更します。

6. masterと乖離して来たら遡ってgit merge master

チームで開発していると自分が変更中の箇所がmasterで変更されたりします。

そのままだとコンフリクトしてマージできなくなったりするので、masterと乖離して来たら適宜解消します。

こういう時は遡ってgit merge masterをしています。

具体的にはgit rebase -iして先頭行でx git merge masterをします。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37