基本 : 基本コマンド
-
ローカルブランチを確認する
git branch
-
リモートブランチを確認する
git branch -r
-
リモートブランチとローカルブランチを確認する
git branch -a
-
ローカルブランチを移動する
git checkout local_branch
-
ローカルブランチを指定したremote_branchで最新化する
git pull orign remote_branch
-
リモートブランチを削除する
git push --delete origin remote_branch
-
マージ済みのローカルブランチを削除する
git branch --delete local_branch
-
マージしていないローカルブランチを削除する
git branch -D local_branch
応用 : リモートのブランチをローカルに持ってくる
-
最初に、リモートに存在するブランチを確認する。
git branch -a
-
手順1で、ローカルに持ってきたい対ブランチが見当たらなければ、以下のコマンドでローカルリポジトリのリモート追跡ブランチにリモートリポジトリを持ってくる。
git fetch
-
ローカルブランチ(local_branch)にリモートブランチ(remote_branch)を持ってくる。
git checkout -b local_branch origin/remote_branch
- ローカルブランチは、このタイミングで作成されますので、先にローカルブランチを作っておく必要はありません。
応用 : 変更したファイルをリモートレポジトリに反映させる。
-
修正したファイルをコミットする内容に加える(add)。
git add <ファイル名>
- フォルダ単位でaddする場合は、ファイル名の箇所にドット「.」を入れます。
-
addしたファイルを全てコミットする。
git commit -m "コメントを自由に記載"
-
現在のディレクトリ以下に存在するaddしたファイルを全てコミットする場合は、以下のようにドットを最後に付けます。
git commit -m "コメントを自由に記載" .
-
複数のファイルをaddした場合は、以下のコマンドでファイル別にコミットできます。
git commit -m "コメントを自由に記載" <ファイル名>
-
-
ローカルのブランチをリモートブランチ(remote_branch)に反映させる。
git push origin remote_branch
- 以下のようなエラーが出た場合は、リモートからpullした後に再度pushコマンドを実行しましょう。
error: failed to push some refs to 'http://
' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Merge the remotechanges (e.g. 'git pull') hint: before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
- 以下のようなエラーが出た場合は、リモートからpullした後に再度pushコマンドを実行しましょう。
応用 : ローカルレポジトリでファイルを削除する。
-
ファイルを削除する。
git rm <ファイル名>
-
ファイルを削除したことをコミットする。
git commit -m "コメントを自由に記載"
-
必要に応じてリモートブランチ(remote_branch)に反映させます。
git push origin remote_branch
応用 : ローカルレポジトリでファイル名を変更 or ファイルを移動させる。
-
ファイル名を変更/ファイルを移動します。
git mv <旧ファイル名> <新ファイル名/新ファイルパス>
-
ファイル名を変更したことをコミットします。
git commit -m "コメントを自由に記載"
-
必要に応じてリモートブランチ(remote_branch)に反映させます。
git push origin remote_branch
発展 : ローカルブランチでコミットの取り消し方法
-
戻るべきheadの履歴を確認
git reflog
-
手順1で確認した「HEAD@{1}」へ戻します
git reset --hard HEAD@{1}
オプションの補足
reset --hard: commitとaddと作業しているディレクトリ内容を取り消し。
reset --mixed:commitとaddの取り消し。
reset --soft: commitのみ取り消し。
発展 : 直前の取り消したこと(reset)を取り消して、元の最新の状態に戻す。
git reset --hard ORIG_HEAD
発展 : ファイル変更を行った後に、変更したファイルをcommitすることなく別のブランチに移動する。
-
ディレクトリで変更を行った内容を避難させます。
git stash
-
git checkout を行い他のブランチで作業を行います。
-
手順1のブランチに戻り、以下のコマンドを実行すると変更した内容が戻ります。
git stash pop
補足:「git stash list」で戻したい変更を確認して、「git stash apply stash@{0}」で指定して戻すこともできます。
発展 :ローカルリポジトリのファイルとリモートリポジトリのファイル比較する
git diff <ファイル名>
発展 : CheckoutしているローカルリポジトリのIDを確認する
git show -s --format=%H