Githubを使ってチームで開発 Forkする?しない?
GitHub社内では誰もgithub/githubのフォークを持っていないらしい。 同じリポジトリのブランチ同士でプルリクエストを行なっているとのこと。
Forkするとは?
自分のGithub上にフォーク元のリポジトリの複製を作ること。 共有されていないリポジトリであっても、フォークしたリポジトリ内で作業ができる。 つまり勝手にForkして、作業ができるということだ。
ForkからPull Requestを送るまで
- フォーク元のリポジトリを自分のアカウントにフォークする
- フォークしたリポジトリを自分のローカル環境にクローンする
- クローンしたリポジトリ内、つまりローカル環境で開発する
- 行った作業内容を、フォークしたリポジトリにコミット&プッシュする
- フォークした自分のリポジトリからフォーク元のリポジトリにプルリクエストを送信する
- フォーク元のリポジトリ管理者に通知が行き、マージされると修正内容が反映される
Forkしないとは?
開発者全員が同じリポジトリを共有して、その中だけで開発を行うこと。
CloneからPull Requestを送るまで
- オリジナルのリポジトリを自分のローカル環境にクローンする
- ブランチを作成し、ローカル環境で開発する
- 行った作業内容を、コミット&プッシュする
- プルリクエストを送信する
- 管理者に通知が行き、マージされると修正内容が反映される
チームで開発するとなると、各種権限が渡されるのは明白だし、わざわざフォークする必要があるのだろうか?