Gitコマンド
Contents
Gitユーザーを確認するコマンド
現在のGitユーザーを確認するコマンド | git config user.name git config user.email |
グローバル設定を確認したい場合 | git config –global user.name git config –global user.email |
Git設定のすべての項目を一覧表示
git config --list
- ユーザー名(user.name)
- メールアドレス(user.email)
- エディタ設定
- カラー設定
- エイリアス
- リモートリポジトリの設定
- その他のカスタム設定
q
を押すとページャーを終了し、通常のコマンドラインに戻ります。
新しいGitリポジトリを作成
git init
- 現在のディレクトリに新しいGitリポジトリを作成します。
.git
という隠しディレクトリを作成し、そこにGitのメタデータを格納します。
git branch
git branch | 現在のリポジトリにある全てのローカルブランチを表示します。 現在のブランチには * が付きます。 |
git branch <ブランチ名> | 新しいブランチの作成 |
git checkout <ブランチ名> | ブランチの切り替え |
git checkout -b <新しいブランチ名> | ブランチの作成と切り替えを同時に行う |
git merge <マージするブランチ名> | ブランチのマージを行う |
git branch -m <古いブランチ名> <新しいブランチ名> | ローカルブランチの名前の変更 |
git checkout と git switch の違いについて
両方ともブランチを切り替えるために使用されますが、いくつかの重要な違いがあります。
- 導入時期:
- git checkout: Git の初期からある古いコマンドです。
- git switch: Git 2.23 (2019年8月リリース) で導入された新しいコマンドです。
- 主な目的:
- git checkout: 多機能なコマンドで、ブランチの切り替え、ファイルの復元、新しいブランチの作成など、複数の機能を持っています。
- git switch: ブランチの切り替えに特化したコマンドです。
- 使用方法:
- ブランチの切り替え:
git checkout <ブランチ名> git switch <ブランチ名>
- 新しいブランチの作成と切り替え:
git checkout -b <新しいブランチ名> git switch -c <新しいブランチ名>
- ブランチの切り替え:
- 主な違い:
- git checkout はファイルの操作もできますが、git switch はブランチの操作のみに限定されています。
- git switch は意図しない動作を防ぐため、より安全で明確です。
- git checkout はまだ広く使われていますが、git switch はより直感的で初心者にも分かりやすいと言われています。
- その他の機能:
- git checkout はコミット履歴を移動する際にも使用できます(デタッチドHEAD状態)。
- git switch には
-d
オプションがあり、これを使うとブランチを作成せずに特定のコミットに移動できます。
- 推奨される使用法:
- ブランチの切り替えや作成には git switch を使用する。
- ファイルの復元や特定のコミットへの移動には git checkout を使用する。
結論として、git switch はブランチ操作に特化した、より安全で明確なコマンドです。一方、git checkout は多機能で柔軟性がありますが、誤用の可能性も高くなります。初心者の方には git switch の使用をお勧めしますが、git checkout の機能も理解しておくと便利です。
ローカルリポジトリの名前変更
git branch -M main
補助系のコマンド
git status
- 現在のブランチ名を表示します。 ステージングエリア(インデックス)の状態を表示します:
- コミットの準備ができているファイル(ステージされたファイル)
- ステージされていない変更があるファイル
- 追跡されていない新しいファイルを表示します。 現在のブランチと上流ブランチ(例:origin/main)との関係を表示します:
- プッシュすべきコミットがあるか
- プルすべきコミットがあるか
- マージ中やリベース中の場合、その状態を表示します。
git log
オプションのonelineで見やすくなります
git log --oneline
git log --graph --oneline
git diff
- 作業ディレクトリとステージングエリア(インデックス)の間の差分を表示します。
- 追加された行、削除された行、変更された行を示します。
- 二つのコミット間の差分を表示
git diff <commit1> <commit2>
git clone
git clone <repository-url>
既存のリポジトリの完全なコピーを作成するために使用されます
↓GitHubよりURLをコピー
▽ブランチを指定してクローン
git clone -b <branch-name> --single-branch <repository-url>
git pull
git pull
コマンドは、リモートリポジトリから最新の変更を取得し、現在のローカルブランチにそれらの変更を統合するために使用されます。
- リモートリポジトリから最新の変更を取得します(
git fetch
と同等)。 - 取得した変更を現在のローカルブランチに統合します(
git merge
と同等)。
前のコミット状態に戻る方法
1)git reflog
を実行して、コミットの履歴を確認します。
git reflog
2)戻りたいコミットのハッシュを見つけます。
3)そのコミットに戻るために git reset --hard
を使用します。
git reset --hard