few matters

些細なる半分

gitコマンド備忘録

diff 周り

$ git diff --cached

addしたファイルについて、最新コミットとの差分。

$ git diff --cached --name-only

addしたファイルのファイル名だけ一覧。

$ git diff --name-only

addしてなかろうと差分のあるファイル名一覧。

add 周り

$ git add [ディレクトリ]

ディレクトリ以下のファイルが全部追加される。スペースで区切りで複数ディレクトリの指定もできる。

$ git add -u

変更・削除したファイルが対象。新規作成・git管理していないファイルは対象外。updateのu。

$ git add -A

変更・削除・新規作成のすべてが対象。Aはallから。

commit 周り

$ git commit --amend -m '[変更後のメッセージ]'

コミットメッセージの変更。

push 周り

$ git push -u origin master

意味を考える始めると意外とややこしいが、 http://dqn.sakusakutto.jp/2011/10/git_push_origin_master.html が分かりやすいので参照。uは上流ブランチupstreamのu。

$ git push -u origin [ブランチ名]

ブランチを切った時。

ブランチ周り

$ git checkout -b [ブランチ名]

新しくブランチを作成して切り替える。

$ git checkout [ブランチ名]

作成済みのブランチに切り替える。

$ git branch -vv

ブランチ関連の情報を見たい時は大体これでOK。vvは詳細verbose×2の意らしい。

stash 周り

$ git stash save [メッセージ]

変更の一時的な退避。https://qiita.com/fukajun/items/41288806e4733cb9c342 が全体的に分かりやすい。

$ git stash list

stashされている変更の一覧。

$ git stash apply stash@{0}

退避した変更を取り出す。0が直近で、最近のものから若い番号になる。

$ git stash drop stash@{0}

退避した変更を消去。

rebase 周り

苦しむので使うべきではない。mergeを使いましょう。