Gitコマンド
自分自身のための gitコマンド集です
git status
Gitリポジトリの状態を表示
git status
git add
ステージ領域にファイルを登録(コミットする前の一時領域)
git add ファイル名
git add . // カレントディレクトリ配下全て
git add README.md
git commit
ステージ領域に登録されているファイル群をリポジトリの記録として登録
git commit -m 'コミットメッセージ'
git commit --amend // 直前のコミットメッセージを変更
-m を付けずに実行した場合、エディタが立ち上がり詳細なメッセージの入力が可能
- 一行目 コミットする内容の要約
- 二行目 空業
- 三行目 変更理由や詳細
git remote add
リモートリポジトリを登録
git remote add origin リポジトリのURL
git push
現在のローカルリポジトリの内容をリモートリポジトリに送信
git push origin main
*origin リモートリポジトリの main ブランチに送信する
git log
リポジトリにコミットされたログを確認
git log
git log README.md // 指定したディレクトリ、ファイルのみログに表示
git log -p README.md // READMEファイルの差分を確認
git log --graph // ブランチをグラフとして確認
git diff
現在のワークツリーとステージ領域との差分を確認
git diff
git diff HEAD // 今回のコミットと前回のコミットの差分を確認
git branch
ブランチを一覧表示
git branch
git branch ブランチ名 // ブランチを作成する
git checkout
ブランチを切り替える
git checkout ブランチ名
git checkout -b ブランチ名 // ブランチを作成し切り替える
git merge
ブランチを結合
git merge 結合対象ブランチ名
git merge --no-ff 結合対象ブランチ名 // マージコミットメッセージを作成
git reset
過去にコミットした時点まで遡る
git reset --hard ハッシュ
ハッシュは git log で表示したコミットログの先頭に記載されている
git reflog
リポジトリで行われた作業を確認
git reflog
git resetで過去の状態まで遡ってブランチを切り修正を加えコミットした後、過去に遡る前の状態まで戻りたい場合(つまり未来に移動したい場合)
git reflogで表示されたログのハッシュを使用し、git reset --hardをすれば過去に遡る前の状態まで進めることができ、本来作業していたブランチと、過去に戻り修正したブランチをマージすれば現在のコードに修正を結合することができる。
git rebase -i
過去のコミットを削除して改変
git rebase -i HEAD~2 // 現在のブランチのHEADを含めた二つまでの歴史を対象とする
エディタが立ち上がり、削除したいコミットに記載されている pick という部分を削除し fixup に変更し保存する。
削除したコミットの内容をもう一つのコミットの内容として加え、それを新しいコミットとする。
(すでにコミットしたコミットメッセージにタイプミスなどがあった場合、新しいコミットを作成し、タイプミスしたコミットメッセージは削除し、新しいコミットメッセージに書き換えたい場合などに便利)
git clone
リモートリポジトリを取得
git clone リポジトリのURL
リモートリポジトリの情報を現在のディレクトリにコピーする
git pull
最新のリモートリポジトリブランチを取得
git pull origin ブランチ名
Git機能
Issue
Issueはソフトウェア開発におけるバグや議論などを管理するために発行するもの。
タスクリストを作成したり、各Issueに独自のラベルを張り付けることができる。
Fork
任意のリポジトリを自分のリポジトリとして作成する。
Pull Request
自分で変更したコードを相手のリポジトリに取り込んでもらえるように依頼するための機能。
とあるリポジトリをForkし、cloneしてローカル環境にリポジトリを持ってくる
そこでブランチを切り、機能の追加や問題点を修正し、Pull Requestを送る
といった流れで、他のソフトウェア開発に参戦することができる。