1. 查看仓库状态,对文件的增删改操作

$ git status

2. 添加需要上传的文件到暂存区

$ git add 文件名    
$ git reset -- 文件名    // 若需取消该文件,则执行该命令或者执行$ git rm --cached 文件名

3. 查看工作区中文件的修改详情

$ git diff
$ git diff --cached

4. 把暂存区修改提交到版本区,生成新的版本

$ git commit -m "备注信息"

5. 查看历史版本提交情况

$ git log
$ git log 分支名
$ git log -n    // n是数字,查看最近n次提交
$ git log --graph    // 图示法显示提交历史

6. 查看全部分支信息

$ git branch -avv

7. 配置个人信息

$ git config -l    // 查看配置信息
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱"
// 或者直接修改.gitconfig文件即可

// 创建公私密钥
$ ssh-keygen    // 存放在.ssh/id_rsa.pub里面,需添加到远程github

$ git clone 仓库

$ git fetch    // 将远程分支信息拉到本地

8. 将本地提交到远程仓库

$ git push origin 分支名称

$ git reset --soft HEAD^    // 撤销最近一次提交,只将暂存区更新
$ git reset --soft HEAD^^    // 撤销最近两次提交,只将暂存区更新
$ git reset --soft HEAD~n    // 撤销最近n次提交,只将暂存区更新

$ git push -f    // 强制更新

9. 查看本地仓库每次版本的变化

$ git reflog

10. 强制回退到某一个版本

$ git reset --hard 版本号

# 解决冲突
$ git reset --hard FETCH_HEAD 
$ git pull -f origin 分支

11. 拉代码下来更新

$ git pull origin master    // 更新主分支
$ git checkout LiuNing    // 切换分支
$ git pull origin LiuNing    // 更新我的分支

12. 创建和查看本地分支信息

$ git branch 分支名    // 创建
$ git branch    // 查看

$ git push origin 本地分支名:远程分支名    // 将本地分支推送到远程
$ git push origin --delete 远程分支名    // 删除远程分支
$ git branch -D 本地分支名    // 删除本地分支

13. 其他命令

$ git stash  // 放弃当前已有文件的更改
$ git rebase 分支名  // 将当前分支与某一个分支进行同步
$ git fetch  // 将远程的各个分支与当前同步