Git常用命令总结,这一篇就够了!

掌握这些命令,告别Git恐惧症

前言

Git作为目前最流行的版本控制系统,几乎是每个程序员的必备技能。本文将常用Git命令进行了系统分类和总结,建议收藏备用。

一、仓库初始化与克隆

bash

# 在当前目录初始化一个新的Git仓库
git init

# 克隆远程仓库到本地
git clone <仓库地址>

# 克隆指定分支
git clone -b <分支名> <仓库地址>

二、基础操作(日常高频使用)

bash

# 查看当前状态
git status

# 添加文件到暂存区
git add <文件名>        # 添加单个文件
git add .              # 添加所有变更
git add *.txt          # 添加所有txt文件

# 提交到本地仓库
git commit -m "提交说明"

# 提交并跳过暂存区(直接提交所有已跟踪文件的修改)
git commit -a -m "提交说明"

# 查看提交历史
git log                # 完整历史
git log --oneline      # 简洁一行显示
git log --graph        # 图形化显示分支

三、远程仓库操作

bash

# 添加远程仓库
git remote add origin <仓库地址>

# 查看远程仓库
git remote -v

# 推送到远程
git push origin <分支名>      # 推送指定分支
git push -u origin <分支名>   # 首次推送并建立关联
git push --all origin         # 推送所有分支

# 从远程拉取
git pull origin <分支名>      # 拉取并合并
git fetch origin <分支名>     # 仅拉取,不合并

# 克隆远程仓库
git clone <仓库地址>

四、分支管理

bash

# 查看分支
git branch               # 本地分支
git branch -r            # 远程分支
git branch -a            # 所有分支

# 创建分支
git branch <分支名>       # 创建分支
git checkout -b <分支名>  # 创建并切换分支
git switch -c <分支名>    # Git 2.23+ 新语法

# 切换分支
git checkout <分支名>     # 传统方式
git switch <分支名>       # 新方式

# 合并分支
git merge <分支名>        # 将指定分支合并到当前分支

# 删除分支
git branch -d <分支名>    # 删除本地分支(已合并)
git branch -D <分支名>    # 强制删除
git push origin --delete <分支名>  # 删除远程分支

五、撤销与回退

bash

# 撤销工作区的修改(未add)
git checkout -- <文件名>   # 传统方式
git restore <文件名>       # Git 2.23+ 新方式

# 撤销暂存区的修改(已add未commit)
git reset HEAD <文件名>    # 传统方式
git restore --staged <文件名>  # 新方式

# 回退提交版本
git reset --soft HEAD~1   # 回退,保留修改在工作区
git reset --mixed HEAD~1  # 回退,保留修改在暂存区(默认)
git reset --hard HEAD~1   # 回退,丢弃所有修改

# 撤销某次提交(生成新的反向提交)
git revert <commit-id>

# 修改上一次提交信息
git commit --amend -m "新的提交信息"

# 往上一次提交添加遗漏文件
git add <遗漏文件>
git commit --amend --no-edit

六、查看差异

bash

# 查看工作区与暂存区的差异
git diff

# 查看暂存区与最新提交的差异
git diff --staged
git diff --cached

# 查看工作区与最新提交的差异
git diff HEAD

# 查看两个提交之间的差异
git diff <commit-id1> <commit-id2>

# 查看两个分支的差异
git diff branch1..branch2

七、暂存与清理

bash

# 暂存当前修改
git stash save "暂存说明"
git stash push -m "暂存说明"

# 查看暂存列表
git stash list

# 恢复暂存(恢复后不删除暂存记录)
git stash apply

# 恢复暂存(恢复后删除暂存记录)
git stash pop

# 删除指定暂存
git stash drop stash@{0}

# 清空所有暂存
git stash clear

八、标签管理

bash

# 创建标签
git tag v1.0.0                    # 轻量标签
git tag -a v1.0.0 -m "说明"       # 附注标签

# 查看标签
git tag                           # 列出所有标签
git show v1.0.0                   # 查看标签详情

# 推送标签到远程
git push origin v1.0.0            # 推送单个标签
git push origin --tags            # 推送所有标签

# 删除标签
git tag -d v1.0.0                 # 删除本地标签
git push origin --delete v1.0.0   # 删除远程标签

九、配置命令

bash

# 设置用户信息
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

# 查看配置
git config --list                 # 所有配置
git config user.name              # 查看用户名

# 设置别名(提高效率)
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.st status
git config --global alias.lg "log --oneline --graph"

# 设置默认编辑器
git config --global core.editor "code --wait"  # VS Code

十、实用命令速查表

操作命令说明
查看状态git status -s简洁模式
查看历史git log --oneline --graph --all图形化所有分支
查看某文件历史git log -p <文件名>显示每次修改的差异
查找责任人git blame <文件名>查看每行代码的修改者
搜索提交git grep "关键词"搜索代码中的关键词
查看简短统计git shortlog -sn按提交数量排序

十一、常见场景示例

场景1:提交错了,想撤回重新提交

bash

git reset --soft HEAD~1   # 撤回提交,修改回到暂存区
git add .
git commit -m "新的提交信息"

场景2:代码丢了,想找回

bash

git reflog                # 查看所有历史操作
git reset --hard <commit-id>  # 恢复到指定版本

场景3:解决冲突

bash

git pull origin main      # 拉取时出现冲突
# 手动编辑冲突文件,删除 <<<<<<< ======= >>>>>>> 标记
git add .
git commit -m "解决冲突"

场景4:合并某次特定提交

bash

git cherry-pick <commit-id>   # 只合并某次提交

十二、.gitignore 常用模板

gitignore

# 依赖目录
node_modules/
vendor/

# 编译产物
dist/
build/
*.class
*.pyc

# IDE配置
.vscode/
.idea/
*.swp

# 环境变量
.env
.env.local

# 日志文件
*.log

# 操作系统文件
.DS_Store
Thumbs.db

总结

掌握以上Git命令,基本可以应对日常开发中的绝大多数场景。建议:

  1. 由浅入深:先从最常用的 git addgit commitgit pushgit pull 开始

  2. 勤于练习:在自己的项目中多操作,形成肌肉记忆

  3. 善用别名:为常用命令设置简短别名,提高效率

  4. 注意安全git reset --hard 慎用,建议先 git stash 或备份


📌 提示:Git 版本在 2.23+ 后引入了 git switch 和 git restore 命令,比传统的 git checkout 职责更清晰,建议逐渐适应新语法。

本文命令均在Git 2.x版本验证通过,如有问题欢迎评论区交流!

如果觉得有用,别忘了点赞收藏哦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值