GitHubでコントリビュートする流れメモ

たまにしかやらなくてTFSと勝手が違ってていつも調べるのでメモ。

  • オリジナルのリポジトリからFork(自分のリポジトリを作成)して、自分のリポジトリからClone(ローカルへ取り込み)する。
  • 自分のリポジトリでPull Request用にブランチを切って作業する。TFSと違い、コミットではなくブランチをマージすることになる。
  • 無印のmasterブランチとかがローカルのリポジトリで、remoteとついているのがGitHub側。remote/originがGitHubの自分のリポジトリ
    • オリジナルのリポジトリgit remote add upstream git://github.com/octocat/Spoon-Knife.gitで登録しておく。remote/upstreamになる。この操作はVisual Studio上では出来なさそう。
  • upstreamの最新を取り込むときは、Fetchしてマージしてoriginへpushする流れ。
  • あとはPull Requestを出すだけだが、出した後もそのブランチへのコミットはPull Requestに反映されていくことに注意。(Pull Requestは出した時点までのコミットの取り込みではなく、ブランチの取り込みを要求する)

参考:

Github で Fork して PullRequest を送るのはこんなに簡単 - Qiita

GitHubでフォーク元の差分を取り込む - Qiita

リポジトリのcloneとforkの違い - Qiita