いつも忘れてしまうので、書き溜めておきます
# cloneする
git clone {github url}
# add
git add karma
git add ./
# commit
git commit -m "commit text"
# push
git push -u origin {hogehoge}
# branch
git branch
git branch --remote
git branch --all (git branch -a)
・作る
git branch newBranch {baseBranch}
・削除
git branch --delete foo
git branch -D foo (強制)
# checkout
git checkout branch2
・リモートブランチからローカルブランチにチェックアウトする
git checkout -b other_branch origin/base_branch
・マージしたらコンフリクトして、どちらかを採用したい時
・今のブランチを採用
git checkout --ours {対象のファイルとかディレクトリとか}
・マージ先のブランチを採用
git cehckout --theirs {対象のファイルとかディレクトリとか}
・修正をなかったことに(マージとかコミット前の状態のファイルに対して)
git checkout {ファイル名}
・全部
git checkout .
# diff
git diff --name-only newBranch oldBranch
git diff newBranch oldBranch file1.php
・masterとhogeブランチ間のdiffをとる
git diff master hoge noname.js
# merge
git merge muster
# reset (巻き戻し)
git reset --hard {commit ID}
・間違ってコミットまでしてしまった場合
git reset --hard HEAD~1
git reset --hard HEAD~2
git reset --hard HEAD~3
後ろの〜1は1つ前に戻す。〜3なら3つ前に。
・git add . も巻き戻し
git reset HEAD .
その他高度?テク
# pushをRejectされたとき
error: failed to push some refs to 'c:\tmp\gittest\test'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
git fetch (リモートの変更を取ってきて)
git rebase origin/master
# branch作り忘れて作業した時
git stash
git branch -b newBranch master
git stash pop
0コメント