複数人作業時のGitの流れ

GitなんてGitHubポートフォリオを載せる道具位のものでしかなかった。masterブランチ一本で、forkとcloneの違いもよくわかってなかった。いよいよ必要になりそうなのでメモしていく。

1:本番レポジトリから自分のアカウントにレポジトリをforkする
2: リモートレポジトリから自分のローカルにレポジトリをclone
 git clone "レポジトリのアドレス"
3: 作業用ブランチの作成

まずは現在のブランチを確認

 git branch

新しいブランチを作成して、そのブランチに移行する

 git branch development-branch
 git checkout development-branch

ちなみにブランチ名変更とブランチ削除はそれぞれ

 git branch -m old-name-of-branch new-name-of-branch
 git branch -d name-of-branch-to-delete
4: 作業後は自分のリモートリポジトリにpush

この際、リモートレポジトリのpush先のブランチもちゃんと指定する。

 git push origin name-of-branch

Push後はGitHubからpull requestを送る。

5: 本番用レポジトリ、(自分の)リモートレポジトリ、ローカルレポジトリの同期を忘れない。
 git remote update 
 git pull
疑問
  • cloneしたブランチからさらに開発用のブランチを切り出すことに意味はあるのか?
  • 複数のcommitに対してまとめてpull requestを送ることは可能なのか?
  • update&cloneは本番用レポジトリのどのレポジトリに対して行い、自分のどのレポジトリに反映されるのか?
  • 新しくブランチ切って、そのブランチにcheckout→新しい変更を適用→マージせずにmasterブランチにチェックアウト→rails severe起動

としたとき、ちゃんと変更適用前のファイルで読み込んでもらえるのだろうか?だとしたらファイルの読み込みシステムどうなってるんだろう。