【Git、GitHub、Gitee】按功能分类汇总Git常用命令详解(超详细)
- Git 常用命令汇总
- Git 命令分类详解
这篇文章详细介绍了Git的常用命令,按照功能分类进行了详细说明,并提供了相应的命令示例。涵盖了从环境配置到分支管理、从基本操作到高级功能的各个方面,帮助读者系统地掌握Git命令的使用方法。
(持续更新中,欢迎关注!)
文章目录
- 【Git、GitHub、Gitee】按功能分类汇总Git常用命令详解(超详细)
-
- 一、Git命令概述部分
-
- [1. Git命令分类](#1. Git命令分类)
- [2. Git命令工作区域操作](#2. Git命令工作区域操作)
- 二、环境配置命令详解
-
- [1. 用户信息配置命令](#1. 用户信息配置命令)
- [2. 文本编辑器配置命令](#2. 文本编辑器配置命令)
- [3. 差异工具配置命令](#3. 差异工具配置命令)
- [4. 查看与修改配置命令](#4. 查看与修改配置命令)
- 三、获取和创建项目命令
-
- [1. 初始化仓库命令](#1. 初始化仓库命令)
- [2. 克隆仓库命令](#2. 克隆仓库命令)
- 四、基本快照命令详解
-
- [1. 添加文件到暂存区命令](#1. 添加文件到暂存区命令)
- [2. 查看状态命令](#2. 查看状态命令)
- [3. 提交命令](#3. 提交命令)
- [4. 移除文件命令](#4. 移除文件命令)
- [5. 移动文件命令](#5. 移动文件命令)
- 五、分支与合并命令详解
-
- [1. 分支查看命令](#1. 分支查看命令)
- [2. 分支创建命令](#2. 分支创建命令)
- [3. 分支切换命令](#3. 分支切换命令)
- [4. 分支合并命令](#4. 分支合并命令)
- [5. 分支删除命令](#5. 分支删除命令)
- 六、项目分享与更新命令
-
- [1. 推送命令](#1. 推送命令)
- [2. 拉取命令](#2. 拉取命令)
- [3. 获取命令](#3. 获取命令)
- 七、检查与比较命令详解
-
- [1. 查看提交历史命令](#1. 查看提交历史命令)
- [2. 查看差异命令](#2. 查看差异命令)
- [3. 查看提交详情命令](#3. 查看提交详情命令)
- 八、撤销操作命令
-
- [1. 撤销工作区修改](#1. 撤销工作区修改)
- [2. 撤销暂存区操作](#2. 撤销暂存区操作)
- [3. 撤销提交](#3. 撤销提交)
- 九、标签命令详解
-
- [1. 标签查看命令](#1. 标签查看命令)
- [2. 标签创建命令](#2. 标签创建命令)
- [3. 标签操作命令](#3. 标签操作命令)
- 十、Git常用命令汇总
- 十一、常见问题与解决方法
-
- [1. 分支操作问题](#1. 分支操作问题)
- [2. 提交操作问题](#2. 提交操作问题)
- [3. 远程仓库操作问题](#3. 远程仓库操作问题)
- [4. 命令使用注意事项](#4. 命令使用注意事项)
一、Git命令概述部分
1. Git命令分类
在Git的日常使用中,掌握常用命令是高效开发的基础

-
环境配置命令
- 用于配置Git环境和用户信息
- 包括用户名称、邮箱、编辑器等设置
-
获取命令
- 用于获取和创建Git项目
- 包括克隆远程仓库、初始化本地仓库等
-
基本快照命令
- 用于文件的添加、提交等操作
- 包括add、commit、status等核心命令
-
分支与合并命令
- 用于分支的创建、切换、合并等操作
- 是Git分布式特性的核心体现
-
项目分享与更新命令
- 用于与远程仓库的交互
- 包括推送、拉取、获取等操作
-
检查与比较命令
- 用于查看历史记录、比较差异等
- 包括log、diff、show等命令
2. Git命令工作区域操作
-
工作区操作命令
- 直接操作工作目录中的文件
- 如checkout、rm等命令
-
暂存区操作命令
- 操作暂存区域的文件状态
- 如add、reset等命令
-
本地仓库操作命令
- 操作本地Git仓库中的提交历史
- 如commit、merge、rebase等命令
-
远程仓库操作命令
- 操作远程仓库的数据
- 如push、pull、fetch等命令
二、环境配置命令详解
1. 用户信息配置命令
bash
# 配置全局用户信息(适用于所有仓库)
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
# 配置当前仓库用户信息(仅适用于当前仓库)
git config user.name "Your Name"
git config user.email "your.email@example.com"

2. 文本编辑器配置命令
bash
# 配置默认文本编辑器
git config --global core.editor "vim"
git config --global core.editor "notepad"
3. 差异工具配置命令
bash
# 配置差异比较工具
git config --global merge.tool vimdiff
4. 查看与修改配置命令
bash
# 查看所有配置信息
git config --list
# 查看全局配置信息
git config --global --list
# 查看特定配置项
git config user.name
# 编辑配置文件
git config --global --edit
三、获取和创建项目命令
1. 初始化仓库命令
bash
# 初始化一个新的Git仓库
git init
# 初始化一个裸仓库(通常用于服务器端)
git init --bare

2. 克隆仓库命令
bash
# 克隆远程仓库到本地
git clone <repository-url>
# 克隆仓库并指定目录名称
git clone <repository-url> <directory-name>
# 克隆仓库的特定分支
git clone -b <branch-name> <repository-url>
四、基本快照命令详解
1. 添加文件到暂存区命令
bash
# 添加单个文件到暂存区
git add <file-name>
# 添加多个文件到暂存区
git add <file1> <file2> <file3>
# 添加所有文件到暂存区
git add .
# 添加所有修改和删除的文件(不包括未跟踪的文件)
git add -u
# 添加所有文件(包括新增、修改、删除的文件)
git add -A

2. 查看状态命令
bash
# 查看工作区和暂存区状态
git status
# 以简短格式显示状态
git status -s
git status --short

3. 提交命令
bash
# 提交暂存区的文件
git commit -m "提交信息"
# 添加并提交文件(跳过暂存区)
git commit -am "提交信息"
# 修改最后一次提交
git commit --amend


4. 移除文件命令
bash
# 从暂存区和工作区移除文件
git rm <file-name>
# 从暂存区移除文件但保留在工作区
git rm --cached <file-name>
# 递归移除目录
git rm -r <directory-name>

5. 移动文件命令
bash
# 移动或重命名文件
git mv <old-file-name> <new-file-name>
五、分支与合并命令详解
1. 分支查看命令
bash
# 查看所有本地分支
git branch
# 查看所有远程分支
git branch -r
# 查看所有本地和远程分支
git branch -a
# 查看分支详细信息
git branch -v

2. 分支创建命令
bash
# 创建新分支
git branch <branch-name>
# 创建并切换到新分支
git checkout -b <branch-name>
# 基于指定提交创建分支
git branch <branch-name> <commit-hash>
3. 分支切换命令
bash
# 切换到指定分支
git checkout <branch-name>
# 创建并切换到新分支(新语法)
git switch <branch-name>
# 创建并切换到新分支(新语法)
git switch -c <branch-name>
4. 分支合并命令
bash
# 合并指定分支到当前分支
git merge <branch-name>
# 使用快进模式合并
git merge --ff <branch-name>
# 禁止快进模式合并
git merge --no-ff <branch-name>

5. 分支删除命令
bash
# 删除本地分支
git branch -d <branch-name>
# 强制删除本地分支
git branch -D <branch-name>
# 删除远程分支
git push origin --delete <branch-name>
六、项目分享与更新命令
1. 推送命令
bash
# 推送当前分支到远程仓库
git push
# 推送指定分支到远程仓库
git push origin <branch-name>
# 推送所有分支到远程仓库
git push --all origin
# 设置上游分支并推送
git push -u origin <branch-name>
2. 拉取命令
bash
# 拉取并合并远程分支
git pull
# 拉取指定分支
git pull origin <branch-name>
# 拉取时使用rebase代替merge
git pull --rebase
3. 获取命令
bash
# 获取远程仓库的更新(不合并)
git fetch
# 获取指定远程仓库的更新
git fetch origin
# 获取所有远程仓库的更新
git fetch --all
七、检查与比较命令详解
1. 查看提交历史命令
bash
# 查看提交历史
git log
# 以图形化方式查看分支历史
git log --graph
# 查看简要历史(每个提交一行)
git log --oneline
# 查看指定文件的提交历史
git log --follow <file-name>
# 查看指定数量的提交记录
git log -n <number>
2. 查看差异命令
bash
# 查看工作区与暂存区的差异
git diff
# 查看暂存区与最近提交的差异
git diff --cached
git diff --staged
# 查看工作区与最近提交的差异
git diff HEAD
# 查看两个提交之间的差异
git diff <commit1> <commit2>
3. 查看提交详情命令
bash
# 查看指定提交的详细信息
git show <commit-hash>
# 查看指定文件在某次提交中的内容
git show <commit-hash>:<file-path>
八、撤销操作命令

1. 撤销工作区修改
bash
# 撤销工作区指定文件的修改
git checkout -- <file-name>
# 撤销工作区所有修改
git checkout -- .
2. 撤销暂存区操作
bash
# 将文件从暂存区移回工作区
git reset HEAD <file-name>
# 将所有文件从暂存区移回工作区
git reset HEAD
3. 撤销提交
bash
# 撤销最近一次提交(保留修改在暂存区)
git reset --soft HEAD~1
# 撤销最近一次提交(保留修改在工作区)
git reset --mixed HEAD~1
# 撤销最近一次提交(完全删除)
git reset --hard HEAD~1
九、标签命令详解
1. 标签查看命令
bash
# 查看所有标签
git tag
# 查看特定模式的标签
git tag -l "v1.0.*"
2. 标签创建命令
bash
# 创建轻量标签
git tag <tag-name>
# 创建附注标签
git tag -a <tag-name> -m "标签信息"
# 为指定提交创建标签
git tag -a <tag-name> <commit-hash>
3. 标签操作命令
bash
# 查看标签详细信息
git show <tag-name>
# 推送标签到远程仓库
git push origin <tag-name>
# 推送所有标签到远程仓库
git push origin --tags
# 删除本地标签
git tag -d <tag-name>
# 删除远程标签
git push origin :refs/tags/<tag-name>
十、Git常用命令汇总
bash
# 环境配置命令
git config --global user.name "用户名"
git config --global user.email "邮箱"
git config --list
# 获取和创建项目命令
git init
git clone <repository-url>
# 基本快照命令
git add <file-name>
git add .
git status
git commit -m "提交信息"
git rm <file-name>
git mv <old-file-name> <new-file-name>
# 分支与合并命令
git branch
git branch <branch-name>
git checkout <branch-name>
git checkout -b <branch-name>
git merge <branch-name>
git branch -d <branch-name>
# 项目分享与更新命令
git push
git push origin <branch-name>
git pull
git fetch
# 检查与比较命令
git log
git log --oneline
git diff
git show <commit-hash>
# 撤销操作命令
git checkout -- <file-name>
git reset HEAD <file-name>
git reset --hard HEAD~1
# 标签命令
git tag
git tag -a <tag-name> -m "标签信息"
git push origin <tag-name>
十一、常见问题与解决方法
1. 分支操作问题
- 分支合并冲突的解决方法
- 分支切换失败的处理
- 分支命名规范的重要性
2. 提交操作问题
- 提交信息的编写规范
- 如何修改提交历史
- 撤销提交的注意事项
3. 远程仓库操作问题
- 推送失败的常见原因
- 拉取冲突的解决方法
- 远程仓库地址的修改
4. 命令使用注意事项
- 区分git checkout和git switch的使用场景
- 理解git reset的三种模式
- 掌握git merge和git rebase的区别