Git 常用命令速查表
什么是 Git?
Git 是一个开源的分布式版本控制系统,由 Linux 创始人 Linus Torvalds 于 2005 年开发,用于高效地管理各种大小的项目。它是目前世界上最先进的版本控制系统,广泛应用于软件开发领域。
Git 的核心设计理念是保证数据的完整性和安全性,所有代码变更都会被记录和追踪,同时支持多人协作开发。
基础操作
初始化与克隆
git init— 在当前目录初始化一个新的 Git 仓库git clone <url>— 从远程仓库克隆代码到本地git clone <url> <dir>— 克隆到指定的本地目录
添加与提交
git add <file>— 添加单个文件到暂存区git add .— 添加所有更改的文件到暂存区git add -p— 交互式逐块添加,可以选择部分更改git commit -m "msg"— 提交更改并添加说明信息git commit -am "msg"— 跳过暂存直接提交已跟踪文件的修改
查看状态与日志
git status— 查看仓库状态,显示哪些文件被修改过git log— 查看详细提交历史记录git log --oneline— 以简洁的单行形式显示提交历史git log --graph --oneline --all— 以图形化方式展示分支历史git diff— 查看工作区和暂存区的差异git diff --staged— 专门查看已暂存的更改
分支管理
分支是 Git 最强大的功能之一,它允许开发者在独立的分支上工作而不影响主代码。
git branch— 列出所有本地分支git branch <name>— 创建一个名为 name 的新分支git checkout <name>— 切换到指定分支git checkout -b <name>— 创建新分支并立即切换过去git merge <name>— 将指定分支合并到当前分支git branch -d <name>— 删除已合并的分支git stash— 临时保存当前工作区的修改git stash pop— 恢复最近一次暂存的修改
分支高级操作
git rebase <branch>— 将当前分支的提交变基到指定分支上git cherry-pick <commit>— 选择特定提交应用到当前分支git reflog— 查看引用日志,找回误删的提交记录
远程协作
git remote -v— 查看所有已配置的远程仓库地址git remote add origin <url>— 添加名为 origin 的远程仓库git push origin <branch>— 将本地分支推送到远程仓库git pull origin <branch>— 从远程仓库拉取并合并最新代码git fetch— 仅获取远程更新但不自动合并git remote remove origin— 移除远程仓库配置
撤销与修正
git reset HEAD <file>— 取消文件的暂存状态git checkout -- <file>— 丢弃工作区的所有修改git revert <commit>— 创建一个新的提交来撤销指定提交git restore <file>— 恢复工作区文件到指定状态git commit --amend— 修正或补充最后一次提交的内容
标签管理
标签用于标记特定的发布版本,如 v1.0、v2.0 等。
git tag— 列出所有标签git tag -a v1.0 -m "Release v1.0"— 创建带注释的标签git push origin --tags— 将所有标签推送到远程仓库git checkout tags/<tagname>— 切换到指定标签
其他实用命令
git blame <file>— 查看文件中每一行的修改者和修改时间git archive— 创建项目某个版本的归档压缩包git bisect— 使用二分查找快速定位引入 bug 的提交git clean -fd— 删除所有未跟踪的文件和目录
常用配置
git config --global user.name "Your Name"— 设置全局用户名git config --global user.email "email@example.com"— 设置全局邮箱git config --global core.editor vim— 设置默认文本编辑器git config --global init.defaultBranch main— 设置默认分支名称
最佳实践
- 频繁提交:每次提交只做一件事,便于回溯和定位问题
- 写好提交信息:使用清晰简洁的提交说明,建议遵循约定格式
- 善用分支:每个功能或 bug 修复都在独立分支上开发
- 定期同步:经常从主分支拉取最新代码避免大规模冲突
- 审查代码:使用 Pull Request 进行团队代码审查
Git 工作流程
功能分支工作流
- 从主分支创建功能分支:checkout -b feature/xxx
- 在功能分支上进行开发和提交
- 完成后推送到远程:git push origin feature/xxx
- 创建 Pull Request 进行代码审查
- 合并后删除功能分支
修复分支工作流
- 从主分支创建修复分支:checkout -b fix/xxx
- 应用修复并提交
- 通过 PR 合并到主分支
Git 在实际项目中的应用
团队协作最佳实践
- 使用特性分支进行开发,避免直接在主分支上修改
- 提交前总是先拉取最新代码,减少冲突
- 使用有意义的提交信息,便于团队成员理解变更内容
- 代码审查是质量保证的重要环节,不要跳过这一步
版本发布流程
- 创建发布分支 release/v1.0
- 进行最后的测试和修复
- 合并到 main 分支并创建标签 v1.0
- 从发布分支部署到生产环境
Git 常见问题解答
如何解决合并冲突?
合并冲突是团队协作中常见的情况。解决步骤:
- 使用
git status查看冲突文件 - 打开文件手动解决冲突标记
- 解决后使用
git add标记已解决 - 完成合并提交
git commit
如何撤销已推送的提交?
- 使用
git revert <commit>创建安全的撤销提交 - 或使用
git reset --hard HEAD~1强制回退(仅限本地)
如何查看某个文件的修改历史?
使用 git log -p <file> 可以查看文件的详细修改历史,或使用 git blame <file> 查看每一行的修改者。
💡 提示:ToolYou 提供丰富的开发工具,包括 Git 命令查询、代码比较、Diff 对比等功能,帮助你提高工作效率!