ターミナルでGitを使う時に最低限覚えておきたいコマンド

SourceTreeなどのGUIアプリケーションを使う場合はいいのですが、どうしてもターミナルを使ってコマンドライン上でGitを操作しなければならない時があります。
今回はそんな時にとりあえずGitからブランチを切って、マージするまでのひと通りの流れができる最低限のコマンドをまとめておきます。
- プルしてブランチを最新にする
- ブランチの確認とブランチを切る
- コミット・プッシュ
- マージ
ブランチを最新にする
まずはプルしてブランチを最新にします。
プルはgit pullで行えるので、プルして最新のファイルに更新しましょう。

ブランチの確認とブランチを切る
ブランチの確認をしたい時はgit branchでローカルブランチの確認ができます。
リモートブランチの確認がしたい時はgit branch -rでOK。
ブランチの作成をする場合はgit checkout -bブランチ名で切ります。
既にあるブランチに移動したい場合はgit checkout ブランチ名で移動が可能です。
// ローカルブランチの確認
$ git branch
// リモートブランチの確認
$ git branch -r
// ブランチの作成
$ git checkout -b feature/branch-name
// ブランチの移動
$ git checkout master
移動したらもう1度git branchで今いるブランチの場所を確認しておきましょう(ブランチ名を間違えていないかも確認)。
コミット・プッシュ
作業をし終わったら、変更部分の確認とコミット・プッシュを行います。
変更部分の確認はgit statusで行います。

| 状態 | 意味 |
|---|---|
| modified | 変更したファイル |
| deleted | 削除したファイル |
| ファイル名のみ | 新規追加したファイル(トラッキングされていない) |
git statusで状態を確認したら、次はコミットを行います。
git commit -m "コミットメッセージ"でコミットができます。
もし、新規追加したファイルがある場合はgit commit -am "コミットメッセージ"でコミットを行います。
ホスティングサービスを使っている場合は、ここでユーザー名とパスワードを聞かれる事もあるので、入力します。
入力できたらコミット完了です。

プッシュはgit pushで行います。
初回プッシュ時(まだリモートブランチがない場合)はgit pushと入力すると、オプション付きのコマンドを表示してくれるので、それをコピペしてプッシュ完了です。
プッシュ後はgit statusで、何も残っていないか確認しましょう。

//変更ファイルの確認
$ git status
//コミット(新規追加ファイルがない場合)
$ git commit -m "コミットメッセージ"
//コミット(新規追加ファイルがある場合)
$ git commit -am "コミットメッセージ"
//プッシュ
$ git push
//プッシュ(まだリモートブランチがない場合)
$ git push --set-upstream origin ブランチ名マージ
マージするブランチに移動した後に、git merge マージしたいブランチ名でマージできます。

//マージ
$ git merge マージしたいブランチこれがターミナルで、Gitからブランチを切って、マージするまでのひと通りの流れになります。
GUIアプリケーションでのGitに慣れている人であれば、コマンドがどの操作を指しているのかある程度理解できると思うので、使っていくうちにすぐ慣れると思います。

Visual Studio Codeのファイル横に表示されるファイルアイコンのテーマまとめ
scpコマンドでターミナル接続先のリモートファイルをローカルにダウンロードする方法
選択テキストをHTMLタグですぐ囲めるようになるVisual Studio Code拡張機能「htmltagwrap」
iTerm2でさらに細かい機能の設定ができる環境設定の「Advanced」タブ
.gitignoreに含めた方がいいファイル・フォルダが一覧でまとまっている「gitignore.io」
「DevTools z-index」でz-indexがかかっている要素をChrome開発者ツールに一覧表示させる
WordPressのカスタムメニューでは、内部リンクに対してカスタムリンクは使わない!
WordPressのContact Form 7で送信時に回転アイコンが出たまま止まってしまうときのチェックリスト
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)