GitLabのPull Requestのコツがつかめてきたので、簡単に説明してみます。
とりあえずContributing Guidelinesをよく読みましょう。決まりを守らない人は嫌われて相手にされません。
あとは、Pull request guidelinesに従いましょう。
- GitLabプロジェクトをフォーク
- フィーチャーブランチを作成
- テストとコードを書く
- 複数のコミットが含まれる場合はsquashで一つのコミットにまとめる
- フォークにコミットをpush
- Pull requestを投稿
- 投稿した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"と挨拶されますが、なんと返せばいいのか分からないので、誰か教えてください。