最低限必要なGitコマンド
友人に説明する必要性が出てきたので頭の整理を兼ねてメモしておきます。どんなものがあるでしょうか?自分的には最低限以下のやつらかと思います。(merge
とかはプルリクエストで行うので直接打たない想定)
status
, log
, diff
, pull
, push
, checkout
, add
, commit
, reset
めちゃくちゃ主観的なワークフロー的なものを描いて見ました。基本的には、新しいブランチ作る
、コミットいくつか作る
、リモートにブランチをプッシュする
の一連の流れができればいいという話かと思います。
# 現状把握系(随時、癖のように打つ) $ git status # 現在のワーキングディレクトリ、ステージエリアの状態みる $ git log --graph --oneline # ブランチの状態確認 $ git log --graph --oneline --all # リポジトリの状態確認 $ git log -p # 直近何やってたか確認 # ローカル最新化 $ git checkout <branchname> # 最新化の準備(大体master) $ git pull # 最新化 # ブランチ作成とチェックアウト $ git checkout -b <newbranchname> # 作成してチェックアウト $ git branch -d <newbbbbranchname> # タイポしたので削除 # コード書いてコミットを繰り返す $ git diff -w <filename> # 差分確認 $ git add <filename> # ステージ $ git reset HEAD <filename> # ステージやめる $ git checkout <filename> # 変更戻す $ git diff HEAD # コミット前最終確認 $ git commit # コミット # プルリクエスト準備のため、ローカルブランチをリモートにプッシュ $ git push -u origin newbranchname
感想
本当に最低限なので、clone
とか一度やったらあとはやらない系はのぞいています。ファイルの変更取り消し、ステージの取り消し、ときたのでコミット取り消し(reflog
やreset --hard
)もいるかと思ったのですが、余裕ができたらでいい気がします。
参考リンク
あとGitに関する大まかなイメージを持っていると楽かもしれないです。