git init
git init --bare
git clone <git-repo>
git config [--global] -e
git config -l
git config --get core.editor
git config --global user.email <mail>
git config --global user.name <name>
git config color.ui true
git config core.ignoreCase false
git config push.default simple
git config --global core.editor vim
git config --global alias.co checkout
vim .gitignore
vim .git/info/exclude
git config --global core.excludesfile ~/.gitignore
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
git add -A
git add -u
git add -p
git rm <file>
git rm --cached <file>
git mv <file> <file1>
git status
git status -sb
git status --ignored
git check-ignore *
git diff
git diff --cached
git diff HEAD
git diff --name-only
git diff <commit> <commit>
git show <commit>
git ls-files
git ls-files -o
git ls-files --full-name
git stash
git stash save <message>
git stash apply
git stash pop
git stash list
git checkout -- <file>
git checkout .
git clean -n
git clean -f
git clean -Xf
git clean -df
git reset
git reset --hard
git reset --hard <commit-ish>
git reset --soft <commit-ish>
git reset --mixed <commit-ish>
git revert <commit>
git branch
git branch -vv
git branch -r
git branch -a
git branch <branch>
git branch -d <branch>
git branch -D <branch>
git branch -m <newbranch>
git branch -u <upstream>
git checkout <branch>
git checkout -b <branch>
git checkout -
git checkout --orphan <branch>
git merge develop
git merge -no-ff develop
git merge -
git rebase develop
git rebase -i
git remote add origin <git-repo>
git remote set-url origin <git-repo>
git remote -v
git remote show origin
设置默认推送策略为 simple
git push origin master
git push -u origin master
git push -n
git pull origin master
git pull --rebase origin master
git commit -m <message>
git commit --amend -m <message>
git commit --amend --author=<mail>
git commit --allow-empty
git commit -n
git log
git log -p <file>
git log --graph --all --oneline --decorate
git log --pretty=raw
git log --since '2 days ago'
git log --author=<author>
git log --grep=<keyword>
git log -S <keyword>
git log master...develop
git log branch2..branch
git log --merges
git shortlog
git shortlog -sn
git tag -ln
git tag -a v1.0.0 -m <message>
git tag v0.9.0 <commit>
git tag -d v1.0.0
git show v1.0.0
git push --tags
git describe
git blame <file>
git blame -L 10,18 <file>
git log -p <file>
git bisect start <br> git checkout HEAD~20 <br> git bisect good <br> git bisect bad <br> git bisect reset
git cat-file -t <hash>
git cat-file -p <hash>
git grep -n hello
git archive -o arch.zip HEAD