目录
[一、 基础配置与初始化](#一、 基础配置与初始化)
[二、 日常操作:提交与状态查看](#二、 日常操作:提交与状态查看)
[三、 查阅历史与对比差异](#三、 查阅历史与对比差异)
[四、 分支管理 (Branching)](#四、 分支管理 (Branching))
[五、 远程协作 (Remote)](#五、 远程协作 (Remote))
[六、 撤销与恢复 (Reset & Revert)](#六、 撤销与恢复 (Reset & Revert))
[七、 技巧性工具](#七、 技巧性工具)
[1. 暂存 (Stash)](#1. 暂存 (Stash))
[2. 搜索 (Grep)](#2. 搜索 (Grep))
[3. 清理 (GC)](#3. 清理 (GC))
在现代软件开发中,Git 已经成为版本控制的标准工具。无论是个人项目还是团队协作,熟练掌握 Git 命令都能极大地提高开发效率。本文整理了 Git 最常用的操作命令,建议收藏备用。
一、 基础配置与初始化
在开始使用 Git 之前,首先需要配置用户信息和初始化仓库。
bash
git init # 初始化本地 Git 仓库
git config --global user.name "xxx" # 配置用户名
git config --global user.email "xxx@.com" # 配置邮件
git clone [url] # Clone 远程仓库
小技巧: 开启终端颜色显示,让输出更易读:
bash
git config --global color.ui true # 自动着色
二、 日常操作:提交与状态查看
这是开发中最频繁使用的命令。
bash
git status # 查看当前工作区状态
git add . # 添加所有修改到暂存区(index)
git commit -m 'message' # 提交暂存区到本地仓库
git commit -am 'message' # 【合二为一】添加并提交(仅限已追踪文件)
git commit --amend -m 'message' # 修改上一次提交(用于修正提交信息或漏掉的文件)
三、 查阅历史与对比差异
了解代码是如何演变的。
bash
git log # 显示详细提交日志
git log -n 5 # 显示最近 5 行日志
git log --stat # 显示日志及关联的变动文件
git log --pretty=format:'%h %s' --graph # 【推荐】图示化显示提交历史
git show [commit_id] # 查看特定提交的详细内容
git show HEAD # 查看最后一次提交内容
git diff # 比较当前工作区与暂存区的差异
git diff --cached # 比较暂存区与最后一次提交的差异
四、 分支管理 (Branching)
分支是 Git 的灵魂,支持并行开发。
bash
git branch # 查看本地分支
git branch -a # 查看所有分支(含远程)
git checkout -b [new_branch] # 创建并切换到新分支
git checkout [branch_name] # 切换分支
git merge [branch] # 将指定分支合并到当前分支
git cherry-pick [commit_id] # 摘取特定提交合并到当前分支
git branch -d [branch] # 删除已合并的分支
git branch -D [branch] # 强制删除分支
五、 远程协作 (Remote)
与团队同步代码。
bash
git remote add origin [url] # 关联远程仓库
git push origin master # 推送本地 master 分支到远程
git pull origin master # 拉取远程更新并直接合并
git fetch # 获取远程更新(不合并,需配合 merge 使用)
git fetch --prune # 清除远程已删除但在本地仍保留的跟踪分支
git push origin --tags # 推送所有标签到远程
六、 撤销与恢复 (Reset & Revert)
人非圣贤,孰能无过。Git 提供了强大的回溯功能。
bash
git checkout -- README # 撤销对 README 文件的修改(回退到 HEAD 状态)
git reset --hard HEAD # 【慎用】重置工作区和暂存区到最后一次提交状态
git revert [commit_id] # 撤销某次提交(会产生一次新的提交,保留历史)
git reflog # 查看所有操作记录,用于寻找丢失的提交(最后的救命稻草)
七、 技巧性工具
1. 暂存 (Stash)
当你正在开发一个功能,突然需要切换分支修复 Bug,但又不想提交不完整的代码时:
bash
git stash # 暂存当前未提交的修改
git stash list # 查看暂存列表
git stash apply stash@{0} # 应用指定的暂存
2. 搜索 (Grep)
在仓库代码中快速搜索:
bash
git grep "关键字" # 在当前代码中搜索文本
3. 清理 (GC)
bash
git gc # 优化仓库,清理不必要的对象
git fsck # 检查仓库完整性
总结
Git 的命令虽然繁多,但在实际开发中常用的往往就是 add、commit、push、pull 和 checkout。掌握了这些基础,再在遇到具体场景(如解决冲突、回滚代码)时查阅对应的进阶命令,很快你就能成为 Git 高手!
希望这篇指南能帮助你更好地驾驭 Git!