Git
GitHub
GitLab

GitLabにPull Requestを送るときの作法

More than 3 years have passed since last update.

GitLabのPull Requestのコツがつかめてきたので、簡単に説明してみます。

とりあえずContributing Guidelinesをよく読みましょう。決まりを守らない人は嫌われて相手にされません。

あとは、Pull request guidelinesに従いましょう。


  1. GitLabプロジェクトをフォーク

  2. フィーチャーブランチを作成

  3. テストとコードを書く

  4. 複数のコミットが含まれる場合はsquashで一つのコミットにまとめる

  5. フォークにコミットをpush

  6. Pull requestを投稿

  7. 投稿したpull requestに関係するissuesを検索しpull requestのコメント欄に記述する

2.について、後日もう再度pull requestを送る場合は、ブランチを切る前に

git remote add upstream https://github.com/gitlabhq/gitlabhq.git

git pull upstream master

という感じで、最新のmasterに追従するのを忘れないように気をつけましょう。

4.については、分割したままでも適切な粒度であれば、問題なくacceptされるようです。むしろ、分割した方がreviewしやすいので好まれる気がします。ただし、無駄なコミットが含まれていると、ほぼ確実にsquashするように突込みが入ります。

それと、squashしたあとに別のpull requestをopenすると怒られるので、git -f push originで上書きでpushしましょう。

それと、rspecやspinachのテストを追加したり、変更点の箇条書きリストや画面のスクリーンショットを説明欄に載せると、かなりの確率でacceptされるっぽいです。

また、GitLabは新機能の要望をfeedback and suggestions forumで受け付けているので、そのステータスが"ACCEPTING MERGE/PULL REQUESTS"ものについてPull requestを投稿すればMergeされる可能性が高いと思います。

余談ですが、GitHubのIssueのcloseを積極的に手伝ったり、何回かpull requestがacceptされるとcontributorのチャットに案内されるようです。午後三時くらいに"good morning"と挨拶されますが、なんと返せばいいのか分からないので、誰か教えてください。


関連リンク