はじめに
共同開発中に何度も『こんなときってどのコマンド使うんだっけ?』、『エラーが表示されるけどどうしよ、、、』と慌てないためのメモとして作成しました。
注意点
自分のメモ書き用も兼ねておりますので、間違った点はご指摘していただけると幸いです。
## リモートリポジトリ(GitHub)のコードをローカルリポジトリに複製
$ git clone リモートリポジトリのURL
//Gitで管理(ローカルリポジトリ作成)
$ git init
//ローカルブランチをリモートリポジトリに登録
$ git push -u origin 作成したブランチ名
//全ての変更したファイルをステージングに保存
$ git add .
//変更したファイルだけをステージングに保存
$ git add ファイル名
//ローカルリポジトリに保存
$ git commit -m "コミットメッセージ"
//ローカルリポジトリにmainブランチを新規作成
$ git branch -M main
//ローカルに新規のブランチを作成
$ git checkout -b ブランチ名
//リモートリポジトリ(GitHub)を登録
$ git remote add origin リモートリポジトリのURL
//リモートリポジトリにプッシュする
$ git push origin main
全てのブランチを確認(ローカルブランチ)
$ git branch -a
現在の作業ブランチの確認
$ git branch
リモートブランチの追跡一覧
$ git branch -r
追跡したいブランチの作成
$ git fetch origin <追跡したいブランチ名>
新規ブランチの作成
$ git branch ブランチ名
ブランチの移動
$ git checkout 移動したいブランチ名
新規ブランチの作成&そのブランチに移動
$ git checkout 移動したいブランチ名
既存ブランチ名の変更
$ git branch -m 変更したいブランチ名 変更後のブランチ名
【直前より前のコミットを取り消す】
$ git reset --hard HEAD
コミットの履歴は残して内容だけを取り消す
$ git revert
コミットだけを取り消したい
$ git reset --soft HEAD^
n個前のコミットを取り消してワークツリーの変更も取り消したい
$ git reset --hard HEAD~{n}
n個前のコミットだけ取り消したい
$ git reset --soft HEAD~{n}
直前のコミット(push済み)のコミットメッセージを修正して再度プッシュしたい
$ git commit --amend -m "新しいコミットメッセージ"
$ git push -f origin 先ほどpushしたリモートブランチ
pull = fetch + merge(コンフリクトを無くす)
$ git pull
ローカルの「master」ブランチまで更新されていない(mergeされていない)
$ git fetch
誤って実行してしまったpullの取り消し
$ git merge --abort
※mainブランチに誤ってpullしまった時に使う
誤って違うブランチにコミットした時のキャンセル
$ git cherry-pick
ファイルの差分を確認したい
$ git diff
ローカルファイルで変更を保存しないで別のブランチに移動(変更分を退避させる)
$ git stash
一番最後に保存した状態に戻す
$ git stash pop
Gitの管理をやめる
絶対に打ち込んではいけないコマンド(gitの管理下におけるファイルの削除)
$ rm -rf .git/
ファイルを削除する
git rm 削除するファイル名
ローカルリポジトリのステータス
$ git status
作業ブランチにmainブランチを反映させるまでの流れ↓
ローカルブランチに移動
$ git checkout ローカルブランチ名
作業中のローカルブランチにmainブランチ反映
$ git merge main
fetchとpushのURLの表示、git pull、git pushの挙動
$ git remote show origin