Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通
一、基础配置命令
1. 用户信息配置
# 设置全局用户名
git config --global user.name "你的名字"# 设置全局邮箱
git config --global user.email "你的邮箱@example.com"# 查看所有配置
git config --list
2. 仓库初始化
# 初始化当前目录为Git仓库
git init# 克隆远程仓库到本地
git clone https://github.com/username/repo.git# 克隆指定分支
git clone -b branch_name https://github.com/username/repo.git
二、基础工作流命令
1. 状态查看
# 查看当前状态(最常用)
git status# 简短状态显示
git status -s
# 输出示例:
# M README.md (已修改)
# A newfile.txt (已添加)
# ?? untracked.js (未跟踪)
2. 添加与提交
# 添加单个文件
git add filename# 添加所有变更(包括新文件和修改)
git add .# 添加所有修改(不包括新文件)
git add -u# 提交变更
git commit -m "提交描述信息"# 添加并提交(适合小改动)
git commit -am "添加并提交"
3. 查看历史
# 查看完整提交历史
git log# 单行显示提交历史
git log --oneline# 带分支图的提交历史
git log --graph --all --oneline# 查看某文件的修改历史
git log -p filename
三、分支管理命令
1. 基础分支操作
# 查看所有分支
git branch -a# 创建新分支
git branch new-feature# 切换分支
git checkout develop# 创建并切换分支(常用)
git checkout -b hotfix# 删除分支
git branch -d old-feature
2. 分支合并与变基
# 合并分支到当前分支
git merge feature-branch# 变基(重写提交历史)
git rebase main# 交互式变基(修改最近3次提交)
git rebase -i HEAD~3
3. 远程分支操作
# 获取远程分支
git fetch origin# 跟踪远程分支
git checkout --track origin/remote-branch# 推送本地分支到远程
git push -u origin local-branch# 删除远程分支
git push origin --delete old-branch
四、撤销与回退命令
1. 工作区撤销
# 撤销工作区单个文件的修改
git restore filename# 撤销工作区所有修改
git restore .# 撤销所有未跟踪文件
git clean -fd
2. 暂存区撤销
# 将文件移出暂存区(保留修改)
git restore --staged filename# 清空暂存区(保留工作区修改)
git reset
3. 提交回退
# 撤销上一次提交(创建新提交)
git revert HEAD# 回退到指定提交(保留修改)
git reset commit_id# 硬回退(丢弃所有修改)
git reset --hard commit_id
五、远程仓库操作
1. 远程连接管理
# 查看远程仓库
git remote -v# 添加远程仓库
git remote add upstream https://github.com/original/repo.git# 修改远程仓库URL
git remote set-url origin https://new.url/repo.git
2. 推送与拉取
# 推送当前分支到默认远程仓库
git push# 强制推送(谨慎使用)
git push -f# 拉取远程更新(fetch + merge)
git pull# 拉取远程更新(fetch + rebase)
git pull --rebase
六、高级实用命令
1. 储藏更改
# 储藏当前工作区修改
git stash# 查看储藏列表
git stash list# 恢复最近储藏
git stash pop# 恢复指定储藏
git stash apply stash@{1}
2. 标签管理
# 创建标签
git tag v1.0.0# 创建带注释的标签
git tag -a v1.1.0 -m "Release version 1.1.0"# 推送标签到远程
git push origin --tags# 删除本地标签
git tag -d v0.9.0
3. 文件忽略
创建.gitignore
文件:
# 忽略所有.class文件
*.class# 忽略node_modules目录
node_modules/# 忽略.env环境文件
.env# 不忽略特定文件
!important.class
4. 差异比较
# 比较工作区和暂存区
git diff# 比较暂存区和最新提交
git diff --staged# 比较两个分支
git diff branch1..branch2# 比较指定文件在不同分支的差异
git diff branch1 branch2 -- filename
七、Git命令速查表
分类 | 命令 | 功能描述 |
---|---|---|
基础操作 | git init | 初始化仓库 |
git clone [url] | 克隆远程仓库 | |
git status | 查看状态 | |
提交相关 | git add [file] | 添加到暂存区 |
git commit -m "msg" | 提交变更 | |
git commit --amend | 修改上次提交 | |
分支管理 | git branch | 查看分支 |
git checkout -b [branch] | 创建并切换分支 | |
git merge [branch] | 合并分支 | |
远程操作 | git remote -v | 查看远程仓库 |
git push | 推送到远程 | |
git pull | 从远程拉取 | |
撤销操作 | git restore [file] | 撤销工作区修改 |
git restore --staged [file] | 撤销暂存区添加 | |
git reset [commit] | 回退到指定提交 | |
历史查看 | git log | 查看提交历史 |
git log --oneline --graph | 图形化历史 | |
git diff | 比较差异 |
八、最佳实践小贴士
-
提交规范:使用清晰、一致的提交信息格式
feat: 添加用户登录功能 fix: 解决首页加载问题 docs: 更新API文档
-
分支策略:
main/master
:稳定生产分支develop
:开发主分支feature/*
:功能开发分支hotfix/*
:紧急修复分支
-
黄金法则:
- 频繁提交小改动
- 提交前使用
git diff
检查变更 - 推送前拉取最新代码
- 慎用
git push -f
强制推送
-
救命命令:
# 查看命令帮助 git help [command]# 查看命令简写手册 git [command] -h
总结
Git的强大功能源于其丰富的命令集,掌握这些常用命令将极大提升你的开发效率。记住:
- 工作区 → 暂存区 → 仓库 是Git的核心工作流
add
、commit
、push
、pull
是最常用命令- 理解
reset
、revert
、stash
等撤销操作能救你于危难 - 良好的分支管理策略是团队协作的基础
实践是最好的学习方式,建议在日常开发中多使用这些命令,逐步形成自己的Git工作流。遇到问题时,别忘了Git内置的帮助系统(git help [command]
)是你最好的朋友!
掌握Git是每个开发者的必备技能,本文整理了最常用、最实用的Git命令,助你高效管理代码版本。
「小贴士」:点击头像→【关注】按钮,获取更多软件测试的晋升认知不迷路! 🚀