Git はバージョン管理の仕組みとして、多くのITプロジェクトで利用されていると思います。
今回は自分の備忘録・メモとして、よく使う Gitコマンドをまとめてみます。
開発を始める前に使うGitコマンド
Gitリポジトリをローカルにクローンする
git clone {gitリポジトリのURL}
もはや説明不要ですね。このコマンドからローカル開発が始まります。
開発用のブランチを作成する
git checkout -b hogehoge
現在のブランチから、新しいブランチを切るコマンドです。`hogehoge` はブランチ名に当たります。
なお、開発時のブランチ名は、特に指定がない場合は {名前}{yyMMdd}+version を個人的にオススメします。
例えば、「サンプル太郎」さんが開発する時は、tsample221126v1 みたいな形式です。
同日に複数のレビューを受ける時は、ブランチ名の末尾を v1, v2... と変えていきます。
日付が変わった場合は、コミットする日にブランチ名の日付を変えて v1 に戻します。
この形式にする事で、「誰の」「いつの」ブランチかが分かりやすくなると思います。
末尾は a, b, c ... でも良いと思います。
開発中に使うGitコマンド
開発用のブランチにステージングする
git add {リソースのパス}
一つだけ、もしくは特定のパッケージ以下のファイル群だけをステージングする場合はパス指定で add するのが良いでしょう。
まとめてステージングする場合は、以下のコマンドを root で打つ事で全ての変更が対象になります。
git add .
.gitignore を活用する事で、git add の対象を狭めるのもいいですね。
【おまけ】
私はステージング作業は事故を防ぐために、VSCodeを使ってます。それ以外はコマンドの方が早いので使い分けてます。
開発用のブランチにコミットする
git commit -m "コミット時のコメント"
コミットするときは、必ずコメントを入れておきましょう。
また、コメントはどのような開発かを端的に表しましょう。ただし、「small fix」とか「○○の開発」といった抽象的な内容は避けてくれる方がレビューする側としては嬉しいです。
リモートリポジトリにプッシュする
git push -u origin {ブランチ名}
ブランチ名には自分の開発内容をコミットしたブランチを指定します。
間違って devel や master, main ブランチなどに直接プッシュしないように気をつけましょう。
ブランチ名を変える
git branch -m "新しいブランチ名"
先ほど少し紹介したように、ブランチ名の命名ルールを定める場合があります。
日々ブランチを新しく最新の devel や master ブランチから切り直すのは面倒です。作業中のブランチ名を変えるだけで済む場合はその方が楽です。
ただし、複数の開発者が頻繁に devel ブランチ(開発のメインブランチ)にマージを行う場合は、適宜変更を取り込むことを忘れずに。
リモートブランチの更新をローカルブランチにマージする
git pull と言いたいところですが、私個人は以下の2ステップで更新しています。
自分がどのブランチに何をマージしようとしているのかを把握し、事故を防ぎます。
git remote update --prune
git merge origin/{ブランチ名}
1行目でリポジトリの更新を取り込みます。 `--prune`を指定する事で、ブランチの削除情報なども取得できるので、このオプションは推奨です。
2行目で、現在のブランチに対して origin のブランチをマージします。
リリース前に使うGitコマンド
ブランチ名を確認する
git branch
リリースモジュール群を git で管理することも多いと思います。
その際は、リリース時にリリースモジュールを間違えないように、master/main ブランチであることを確認する手順を怠らないようにします。
このGitコマンドで、現在の自分のブランチが表示されます。
ブランチを切り替える
git checkout {ブランチ名}
先述のように、違うブランチだった場合はブランチを切り替えましょう。
リリース後に使うGitコマンド
タグをつける
git tag {タグ名} - m "タグのコメント"
git push origin {タグ名}
リリースが終わったら、そのタイミングでタグをつけることが多いと思います。
後から問題が発生した時の切り分け・検証のためにも、開発が終わったタイミングでタグをつけておきましょう。
もちろん、リリース後だけではなく、必要なタイミングでタグをつけて良いです。
例えば、コードフリーズやQA環境リリース、本番環境リリースなど。開発期間のスプリント毎に切っても良いですね。
Gitコマンドまとめ
もちろん、本記事で紹介したGitコマンド以外にも必要に応じて使うものは多いです。
適宜 Google 先生に聞きながら進めましょう。
今回紹介したコマンドの流れをざっとまとめます。
git clone {gitリポジトリのURL} # リポジトリをクローンする
git checkout -b hogehoge # 開発用のブランチを切る
git add . # 開発内容をステージングする
git commit -m "コミット時のコメント" # 開発内容をコミットする
git push -u origin {ブランチ名} # 開発内容をプッシュする
git branch -m "新しいブランチ名" # (必要に応じて)ブランチ名を変え、開発を続ける
git remote update --prune # (必要に応じて)リポジトリを更新する
git merge origin/{ブランチ名} # (必要に応じて)ブランチに変更をマージする
git tag {タグ名} - m "タグのコメント" # 特定のマイルストーンでタグを切る
git push origin {タグ名} # タグをプッシュする
このような一連のコマンドを覚えておけば、通常の開発においてはそこまで不便はしないでしょう。
おわりに
今回は、個別のGitコマンドの使い方の深掘りまではしていません。
Gitコマンドも多種多様で奥が深いので、いざ利用する時に調べながら知識を深めていきましょう。
おまけ:GUIツールは嫌いなので今後もあまり言及はしないでしょう。
コメント