Github上にローカル環境からTerminalなどのコマンドラインを使ってPush,PullRequestを作成する流れをまとめてみました。
#大まかな流れ
①Github上からローカルにファイルをclone(保存)する
②GithubへPullRequest用のBranchをローカルで作成する
③データを更新編集し、ローカルに add, commitする
④Githubにpushする
⑤GithubにPullRequestする
※⑥PullRequestをMergeする
#用語の整理
①Github…オンライン上にレポジトリーを保管し、複数人で共有・編集できる
②ローカル…自分のPC
③clone...Githubなどオンライン上のリポジトリーをローカルにコピー保存すること
④Branch...1つのレポジトリに複数のBranchを作ることで同時に複数のバージョンでレポジトリを管理することができるようになる。Branchの更新規則を決めておくべきだが、主にmasterが本番用で常に動く状態で保管、developが開発用で頻繁に編集、・・などといったように複数Branchが存在することがほとんど。参考 http://www.backlog.jp/git-guide/stepup/stepup1_1.html
⑤add, commit...ひとつのブランチには、編集エリア>ステージングエリア>本番エリアの3つにわかれており、addは編集エリアからステージングに以降するためのもの。commitはステージングエリアから、本番エリアに移行するためのもの。
⑥Push...ローカル上からオンライン上に編集したレポジトリを受け渡すこと
⑦PullRequest...オンライン上のレポジトリを更新した際に、他にもレポジトリ編集者がいる場合に、その編集内容を受け取って(pull)くださいというリクエストを出すこと
⑧Merge...オンライン上のレポジトリにPullRequestを受けたレポジトリを合体させること
#Github上のレポジトリからローカルにclone(保存)する。
① GithubのPullRequestをしたいページに移動する。
今回は、こちらで実験します。
https://github.com/samurairunner/pullreq
③ ターミナルからcloneを実行する
$ git clone https://github.com/samurairunner/pullreq.git
#Pull Request用のBranchを作成する
①cloneしたディレクトリに移動する
$ cd pullreq
②developという名前のBranchを作成する
$ git checkout -b develop
#Cloneしたディレクトリを編集する
① 現在のフォルダをFinderで表示
$ open .
②ファイルの編集
略
#ローカルでadd⇒commit、Githubへpushする
①編集ファイルをステージングに移す
$ git add .
②編集ファイルをcommitする
$git commit -m "update README"
③developブランチからGithub上のoriginブランチにpushする
$git push origin develop
#Github上でPullRequestする
①右上の緑色のCompare & pull requestボタンをクリック
③どのブランチからどのブランチにpull requestするかを確認する
※developブランチからmasterブランチへのpull request
④「Create pull request」ボタンを押して、Pull Requestを作成
#Github上でMergeする
※この作業は、本来、自分以外のレポジトリ管理者がコードを確認して実行される