基本
Add
git add [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p] [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]] [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize] [--chmod=(+|-)x] [--] [ …]
# 添加所有文件git add .
commit
git commit [-a | --interactive | --patch] [-s] [-v] [-u ] [--amend] [--dry-run] [(-c | -C | --fixup | --squash) ] [-F | -m ] [--reset-author] [--allow-empty] [--allow-empty-message] [--no-verify] [-e] [--author= ] [--date= ] [--cleanup= ] [--[no-]status] [-i | -o] [-S[ ]] [--] [ …]
# 提交修改记录git commit -m
reset
git reset [-q] [ ] [--] …git reset (--patch | -p) [ ] [--] [ …]git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [ ]
# 回滚到某个 commitgit reset --hard [ ]# 记录所有操作,可以找回丢失的 commitgit reflog
分支与合并
branch
git branch [--color[= ] | --no-color] [-r | -a] [--list] [-v [--abbrev= | --no-abbrev]] [--column[= ] | --no-column] [--sort= ] [(--merged | --no-merged) [ ]] [--contains [ ]] [--points-at
# 新建分支git branch # 删除本地分支git branch -d # 查看本地分支git branch# 查看所有(本地+远程)分支git branch -a# 删除远程分支git push origin --delete
checkout
git checkout [-q] [-f] [-m] [ ]git checkout [-q] [-f] [-m] --detach [ ]git checkout [-q] [-f] [-m] [--detach] git checkout [-q] [-f] [-m] [[-b|-B|--orphan] ] [ ]git checkout [-f|--ours|--theirs|-m|--conflict=
# 创建+切换分支git checkout -b
merge
git merge [-n] [--stat] [--no-commit] [--squash] [--[no-]edit] [-s ] [-X ] [-S[ ]] [--[no-]allow-unrelated-histories] [--[no-]rerere-autoupdate] [-m ] [-F ] [ …]git merge --abortgit merge --continue
分享及更新项目
fetch
git fetch [ ] [ [ …]]git fetch [ ] git fetch --multiple [ ] [( | )…]git fetch --all [ ]
push
git push [--all | --mirror | --tags] [--follow-tags] [--atomic] [-n | --dry-run] [--receive-pack= ] [--repo= ] [-f | --force] [-d | --delete] [--prune] [-v | --verbose] [-u | --set-upstream] [-o | --push-option= ] [--[no-]signed|--signed=(true|false|if-asked)] [--force-with-lease[= [: ]]] [--no-verify] [ [ …]]
# 新建远程分支git push origin dev(local):dev(remote)# 删除远程分支git push origin :dev(remote)