vlambda博客
学习文章列表

收藏手,Git 命令大全,都在这张图上了


文末领取高清脑图版本。

1、配置命令

  • 列出当前配置:git config --list
  • 列出 Repository 配置:git config --local --list
  • 列出全局配置:git config --global --list
  • 列出系统配置:git config --system --list
  • 配置用户名:git config --global user.name "your name"
  • 配置用户邮箱:git config --global user.email "your email"

2、分支管理

  • 查看本地分支:git branch
  • 查看远程分支:git branch -r
  • 查看本地分支和远程分支:git branch -a
  • 从当前分支,切换到其他分支:git checkout <branch-name>
  • 创建并切换到新分支:git checkout -b <branch-name>
  • 删除分支:git branch -d <branch-name>
  • 当前分支与指定分支合并:git merge <branch-name>
  • 查看哪些分支已合并到当前分支:git branch --marged
  • 插卡哪些分支没有合并到当前分支:git branch --no-merged
  • 查看各个分支最后一个提交对象的信息:git branch -v
  • 删除远程分支:git push origin --d <branch-name>
  • 重命名分支:git branch -m <oldbranch-name> <newbranch-name>
  • 拉取远程分支并创建本地分支:git checkout -b 本地分支名 x origin/远程分支名 x

3、fetch 指令

  • 将某个远程主机的更新,全部取回本地:git fetch <远程主机名称>
  • 取回特定分支:git fetch <远程主机名称> <分支名>
  • 取回特定分支,并拉取到本地分支:git fetch origin <branch-name>:<local-name>

4、文件暂存

  • 添加改动到 stash:git stash save -a "message"
  • 删除暂存:git stash drop <stash@{ID}>
  • 查看 stash 列表:git stash list
  • 删除全部缓存:gitstash clear
  • 恢复改动:git stash pop <stash@{ID}>

花式撤销

  • 撤销工作区修改:git checkout -- <file>
  • 暂存区文件撤销(不覆盖工作区):git rest HEAD <file>
  • 版本回退:git rest --(soft | mixed |hard) <HEAD ~(num)> | <commit ID>
    • --hard:回退全部,包含 HEAD,index,working tree
    • --mixed:回退部分,包括 HEAD,index
    • --soft:只回退 HEAD

5、文档查询

  • 展示 Git 命令大全:git help (--help)
  • 展示 Git 命令大纲全部列表:git help -a
  • 展示具体命令说明手册:git help <command>

6、分支管理规范

master 分支

  • 主分支,用户部署生产环境的分支,确保稳定
  • maser 分支一般由 develop 以及 hotfix 分支合并,任何情况下都不能直接修改代码

develop 分支

  • develop 为开发分支,通常情况下,保存最新完成以及 bug 修复后的代码
  • 开发新功能时,feature 分支都是基于 develop 分支下创建的

feature 分支

  • 开发功能,基于 develop 为基础创建 feature 分支
  • 分支命令:feature/ 开头的为腾讯分支,命令规则:feature/user_module、feature/cart_module

release 分支

  • release 为预上线分支,发布提测阶段,会 release 分支代码为基准提测

hotfix 分支

  • 线上出现紧急问题时,需要及时修复,以 master 分支为基线,创建 hotfix 分支,修复完成后,需要合并到 master 分支和 develop 分支。

7、差异比较

  • 比较工作区与缓存区:git diff
  • 比较缓存区与本地库最近一次 commit 内容:git diff --cached
  • 比较工作区与本地最近一次 commit 内容:git diff HEAD
  • 比较两个 commit 之间差异:git diff <commit ID> <commit ID>

8、基本概念

  • 版本库.git 文件:当我们使用 git 管理文件时,一般它会多出一个.git 文件,我们将此称之为版本库
  • 工作区:本地项目存放文件的位置
  • 暂存区:顾名思义就是暂时存放文件的地方,通过 add 命令将工作区的文件添加到缓存区
  • 本地仓库:通常情况下,我们使用 commit 命令可以将暂存区的文件添加到本地仓库
  • 远程仓库:举个例子,当我们使用 GitHub 托管我们项目时,它就是一个远程仓库

9、Git 文件状态

通过命令 git status 查看文件状态

  • untracked:在暂存区没有该文件
  • modified:被修改的文件
  • staged:使用 git add 暂存的文件


领取高清脑图版本,扫码送:git