1、设置远程库
$ // name:远程库名字
$ // url:远程库地址
$ git remote add <name> <url>
2、删除远程库
$ // name:远程库名字
$ git remote remote <name>
3、修改远程库
$ // name:远程库名字
$ // url:远程库地址
$ git remote set-url <name> <url>
4、拉取远程库
$ // name:远程库名字
$ // branch:远程库分支
$ git pull <name> <branch>
$ // 拉取并处理冲突
$ git pull <name> <branch> --rebase
5、处理冲突命令
$ // 继续下一个rebase
$ git rebase --continue
$ // 取消rebase合并
$ git rebase --abort
6、新建分支
$ // 本地新建分支
$ // name:分支名字
$ git checkout -b <name>
$ // 基于远程库master分支新建dev分支
$ git checkout -b dev origin/master
7、修改上一次提交信息
$ // 方案一 进入vim进行修改
$ git commit --amend --only
$ // 方案二 直接修改
$ git commit --amend --only -m ""
$ // 方案三
$ // 首先回撤到上一次提交,不修改本次提交的改动
$ git reset --soft HEAD~1
$ // 重新做一次提交
$ git commit -m ""
8、合并多条commit
$ // 一条一条查看git日志
$ git log --oneline
$ // n为数字,可以合并多条commit
$ git rebase -i HEAD~n
$ // 进入vim编辑页面后 按i就是insert 就可以根据上面的提示修改
$ // 修改好之后按esc 再按:wq保存退出
9、删除分支
$ // 删除没合并进来的分支
$ git branch -D dev
$ // 删除已经合并进来的分支
$ git branch -d dev
10、代码写错分支
$ // 先添加暂存区
$ git add .
$ // git内容进栈
$ git stash
$ // 切换分支
$ git checkout <name>
$ // git内容出栈
$ git stash pop
11、退版本
$ // 查看提交历史获取提交版本号
$ git log
$ // 回退到具体版本
$ git reset --hard <版本号>
12、删错分支
$ // 找到被删除分支的hash
$ git reflog
$ // 创建分支
$ git checkout -b <name>
$ // 回退
$ git reset --hard <hash>
13、推分支
$ // 强制替换 name: 远程库名字 branch:分支
$ git push <name> <branch> -f
$ // 把本地branch1分支推到线上仓库branch2分支
$ git push <name> <branch1>:<branch2>
$ // 把本地branch1分支强推到线上仓库branch2分支
$ git push <name> <branch1>:<branch2> -f
14、查看分支
$ // 列出本地所有分支
$ git branch
$ // 列出所有远程分支
$ git branch -r
$ // 列出本地和远程分支
$ git branch -a
15、删除分支
$ // 删除dev分支
$ git branch -D dev
16、暂存修改
$ // 用来提交一个文件到暂存区,使其状态变成Staged(暂存状态)
$ git add <文件名,也可以是路径+文件名>
$ // 移除暂存区的文件,使其状态变成Untracked(未跟踪)
$ git rm --cached <文件名,也可以是路径+文件名>