michiyuの日記

福岡でエンジニアしています

git コマンド カンニングシート

 目次

 

git branch

  • ブランチを確認

git branch -vv 

  • ブランチの詳細情報を確認(behind 変更差分)

git branch -d hoge

  •  HEAD にマージしたブランチを削除する

git branch -D hoge

  • 強制的に削除

git add ファイル名

  • 作業ツリーからindexにファイルを追加

git add -A または . (ドット)

  • 全てのファイルをindexに追加

git commit -m "first commit"

  • 修正ファイルをindexからブランチにコミット
  • -m でメッセージをつける

git commit --amend

  • 直前のコミットのコミットメッセージを変更
  • vimが立ち上がり、一番上の行にコミットメッセージが表示されます。
  • 編集して保存しましょう

git push origin master

  • コミットした内容をリモートブランチに反映する

git fetch

git status

  • ファイルステータス(changes to be commited = index) 

git checkout develop

  • 作業ブランチを切り替える

git checkout -b 

  • ブランチの作成とチェックアウトを同時

git checkout -f

  • ブランチを強制的に切り替える

git checkout . (ドット)

  • 変更しているファイルをなかったことにする(自分をチェックアウトしている)

git pull origin master

  • プルしてくる(ブランチを指定しない場合、今のブランチをプルしてくる)

git stash

  • スタッシュへ入れる

git stash list

  • スタッシュを確認

git stash apply 0 (スタッシュ番号)

  • スタッシュから戻す

git stash pop

  • スタッシュから戻し、スタッシュからは消す   

git log

  • ログを表示

git log -5

  • 先頭5行を表示

git log --oneline

  • 一行で表示
  • 一つ前のと組み合わせもできる

git revert コミットID

  • 特定のコミットを取り消す
  • ログにrevertをした履歴が載る

git reset --hard HEAD^

  • 直前のコミットを取り消す
  • --hardとつけることで修正したファイルの内容も全て取り消しとなる
  • HEAD^ は @^ でも HEAD~ でもいい

git reset --mixed HEAD^

  • commitとaddを取り消す
  • コミットしていた変更内容も作業ツリーにある状態となる
  • reset のデフォルトはこれなので--mixedはつけなくてもいい

git reset --soft HEAD^

  • コミットしていた変更内容はインデックスに残る
  • 取り消すときは基本これで問題ない
  • 変更したあと、git push -f origin ブランチ名 でpushしておけばなかったことにできる

git reset -- hard ORIG_HEAD 

  • 直前のリセットを取り消す

 

ショートカット

git config —global alias.co checkout
  • git co で git checkout が打てる
git config --global alias.st status
  • git st で git status が打てる

 

カンニングシート的な チートシート的な。

随時更新していく。