概要
自分が普段よく使うGitコマンドをメモとして残します
ブランチ作成関係
ローカル・リモート共に存在するブランチからローカルブランチを切る場合
git branch
* feature/1
develop
git checkout develop
git pull origin develop
git checkout -b new_branch_name
リモートのみに存在するブランチからローカルブランチを切る場合
git branch
* develop
# リモート追跡ブランチを確認する
git branch -r
origin/HEAD -> origin/develop
origin/develop
origin/feature/git_test ★今回の作成対象
# リモートブランチからリモート追跡ブランチ(ローカル上に存在するリモートブランチのコピー)の[origin/feature_git_test]を作成する
git fetch
# リモート追跡ブランチからローカルブランチを作成する
git checkout -b 作成するブランチ名 origin/リモート追跡ブランチ名
作業中のブランチを最新化する方法(pull)
git branch
* feature/1
develop
# 更新した追跡ファイルのみstashする(未追跡ファイルはstashしなくても問題ない)
git stash push -m "stash時のコメント"
# stashされていることを確認
git stash list
stash@{0}: On git_stash_test: stash時のコメントが表示される
git checkout develop
git pull origin develop
git checkout feature/1
# 作業ブランチにdevelopの内容をマージする
git merge develop
# 最新のstash内容を反映してstash履歴から削除する
git stash pop
コードの取り消し関係(reset)
# addのみを取り消したい時
# git logにもコミットメッセージ残らない
# 編集した内容はそのまま残るがaddしたことのみを取消
git reset --mixed HEAD
# commitのみを取り消したい時
# git logにもコミットメッセージ残らない
# 編集した内容とaddしたことはそのまま残るが、commitしたことのみを取消
git reset --soft HEAD^
# 色々編集してみたけど、前回のcommit直後の状態に戻りたい時
git reset --hard
# reset --hardを取消
git reflog
git reset --hard [戻したいハッシュ値]