この記事の目的
この記事は、gitを用いた共同開発における毎日のgit操作をメモしたものです。この手順は、個人開発、共同開発ともに使えるうえ、チームのリーダーでもメンバーであっても開発する時の基本的な流れなので是非覚えておきましょう!
gitは奥が深いもので他にも以下のような話題がありますが、ネットに少ない情報から順にボチボチ記事にしていきたいと思います~
・gitのインストール、githubのアカウント登録など
・git基本の"き"!(git?なにそれおいしいの?)
・git基本の"ほ"!(git関係の基本用語〇〇選!)
・git基本の"ん"!(gitを操る最強コマンド〇〇選!)
・ssh接続、https接続の理解
・gitを使って開発を始める方法①(個人開発)
・gitflowの理解
・gitを使って開発を始める方法②(共同開発)
・.gitignoreの重要性
・gitのGUIサポートツールSourceTree
・gitを使って開発を始める方法③(Unityでの共同開発)
・gitを用いた開発手順(普段の作業)←今ココ!!
・難関!「コンフリクト」対処の定石
普段の共同開発の手順
★大事な事:
共同開発するという事は、その組織で何かしら策定されたルールがあるはずです。以下の手順はベーシックな一例なので、実際に開発に着手するときはチームのリーダーにgithubの運用方法を確認しましょう!! またチームのリーダーを務める場合には、必要な運用ルールがあれば必ずドキュメント化して共有しましょう!
また、ここではGitコマンドを使う方法を紹介していますが、SourceTreeなどを使っても操作手順は同じです。
①作業前にすること:
共同開発をしていれば、自分が休んでいる間にほかの人が独自のプログラムを書いて反映させることは日常茶飯事です。それに気づかずに同じ場所を上書きしてしまったら「コンフリクト」というプログラムの衝突が発生します。これが発生するとどちらかの人が書いたコードが無駄になることがあるのでなんとか避けたいです。そのために、作業前にあらかじめほかの人が行った変更を自分のローカル環境に反映します。
まず自分がdevelopブランチにいることを確認する。確認出来たら以下のコマンドを順に実行します。
git checkout develop // 自分がdevelopブランチ以外にいるときは実行
git fetch // ほかの人の更新を取得する。
git pull // 取得した更新を自分のローカル環境に反映させる。
git checkout -b <自分の作業ブランチ名> // developブランチから自分の作業ブランチを新しく作って切る。
②自分のブランチで作業をする:
間違ってもdevelopブランチとかで作業しないように!(でもよくあるミス。筆者もこれやってよく怒られt...)
作業を中断して再開するときとかは、必ず自分のブランチになっているか確認する。
③ローカルリポジトリからリモートリポジトリにpushする方法:
作業が終わったら、自分が、自分の作業ブランチにいることを確認し、以下のコマンドを順に実行する。
自分が作業している間にも、ほかの人が別の作業を完成させているかもしれません。これはまた「コンフリクト」の原因になってしまいます!しっかりとほかの人の作業を自分のブランチに反映させてからpushするようにします。
git add .
git commit -m "メッセージ"
git checkout develop
git pull
git checkout <自分の作業ブランチ名>
git merge develop //特にこのコマンドは、SourceTreeを使う場合でもターミナルを使った方が分かりやすい
//コンフリクトしてたらこの時点で対処し、git add . とgit commit -m "メッセージ"コマンドを実行。
git push -u origin <自分の作業ブランチ名>
④pushしたあとリモートリポジトリですること:
・Githubのリモートリポジトリを見る。
・Compare&pullrequestボタンを押す。
・するとメッセージボックスが出るので、書くことがあれば書いて、pull requestボタンを押す。
・他の人が見てオッケーしてくれれば、merge developボタンを押して作業完了。お疲れ様。
さいごに
本当にざっくりとした流れだけをシンプルに書いたので、それぞれのチームに合わせてちょっと修正を加えながらメモ代わりに使ってもらえればうれしいです~