GitLab でマージリクエストするときの流れ

GitHub だと、Fork→ブランチ作成→コミット→プルリク みたいな流れだと思うんですが、
GitLab で同じようにやろうとしたら、全然違ってた!

  1. 参加するプロジェクトに、直接ブランチを作成。(えーっ!)
  2. 作成したブランチに、コミット、コミット。無駄なコミットはsquashでまとめたり。
  3. ブランチを push する。
  4. push したブランチで、マージリクエスト作成!
  5. マージリクエストされた側は、やってきたマージリクエストを処理。


Fork してから同じことをやろうとすると、あれれー?となる。
何故なら、自分が Fork したプロジェクトにしかマージリクエストを送れないから....
automerge 関係の記事がちらほら見かけられたけど、
GitLab 5.2 では、デフォルトで automerge が有効になっている模様・・・?

[余談] Could not read 〜が出て sshリポジトリが操作できなくなったとき

一度はインストールして、ちゃんと動いていたのに、突然SSHで操作できなくなる現象が。
HTTP からの clone とかはできる。でも、SSHだけは fatal: Could not read from remote repository.
入れ直しも試したのに、それでも直らず、結局原因は、gitlab-shell だった。
gitlab-shell で bin/check すると、APIが401となる。
はて?と思い、よく考えると、GitLabにBasic認証をかけていたんだった。
Basic認証をかける場合は、gitlab-shell の config.yml に、以下の設定を行えばOK。

http_settings:
  user: mofumofu
  password: moffumofu

気づかずに2時間ほどつぶしてしまった....