# Git的常见操作有哪些 ## 目录 1. [Git简介](#git简介) 2. [基础操作](#基础操作) - [初始化仓库](#初始化仓库) - [克隆仓库](#克隆仓库) - [查看状态](#查看状态) 3. [文件操作](#文件操作) - [添加文件](#添加文件) - [提交更改](#提交更改) - [忽略文件](#忽略文件) 4. [分支管理](#分支管理) - [创建分支](#创建分支) - [切换分支](#切换分支) - [合并分支](#合并分支) 5. [远程操作](#远程操作) - [添加远程仓库](#添加远程仓库) - [推送更改](#推送更改) - [拉取更新](#拉取更新) 6. [撤销操作](#撤销操作) - [撤销工作区修改](#撤销工作区修改) - [撤销暂存区文件](#撤销暂存区文件) - [回退提交](#回退提交) 7. [高级技巧](#高级技巧) - [储藏更改](#储藏更改) - [重写历史](#重写历史) - [二分查找](#二分查找) 8. [总结](#总结) --- ## Git简介 Git是Linus Torvalds于2005年开发的分布式版本控制系统,现已成为开发者管理代码的标准工具。它具有以下核心优势: - 分布式架构:每个开发者都有完整的仓库副本 - 高效的分支管理:轻量级分支操作 - 完整性保障:通过SHA-1哈希保证数据完整性 ## 基础操作 ### 初始化仓库 ```bash # 在当前目录创建新仓库 git init # 指定目录创建 git init <project-directory> 初始化后会生成隐藏的.git目录,包含所有版本控制数据。
# 克隆远程仓库 git clone https://github.com/user/repo.git # 克隆到指定目录 git clone https://github.com/user/repo.git myfolder # 克隆特定分支 git clone -b dev https://github.com/user/repo.git git status git status -s # 精简输出 关键状态标识: - ??:未跟踪文件 - A:新增文件 - M:修改文件 - D:删除文件
# 添加单个文件 git add README.md # 添加所有变化 git add . # 交互式添加 git add -p # 基础提交 git commit -m "fix: 修复登录bug" # 修改上次提交 git commit --amend # 带详细描述的提交 git commit -m "标题" -m "详细描述..." 推荐使用约定式提交规范消息格式。
创建.gitignore文件示例:
# 忽略所有.class文件 *.class # 不忽略lib/下的.class文件 !lib/*.class # 忽略整个目录 build/ # 创建分支 git branch feature-x # 创建并切换 git checkout -b hotfix git checkout main git switch feature-x # 更直观的新命令 # 普通合并 git merge feature-x # 变基合并 git rebase main # 解决冲突后继续 git add . git rebase --continue 合并策略对比:
| 策略类型 | 优点 | 缺点 |
|---|---|---|
| Merge | 保留完整历史 | 产生合并提交 |
| Rebase | 线性历史 | 改写历史风险 |
git remote add origin https://github.com/user/repo.git git remote -v # 查看远程 # 首次推送 git push -u origin main # 强制推送(慎用) git push -f # 删除远程分支 git push origin --delete old-branch # 等同于 fetch + merge git pull # 推荐方式 git fetch git merge origin/main # 撤销指定文件 git checkout -- README.md # 撤销所有修改 git restore . git reset HEAD file.txt # 软回退(保留更改) git reset --soft HEAD~1 # 硬回退(彻底删除) git reset --hard a1b2c3d git stash git stash list git stash pop git stash apply stash@{1} # 交互式变基 git rebase -i HEAD~3 常用操作指令: - pick:保留提交 - reword:修改消息 - squash:合并到前一个提交 - drop:删除提交
git bisect start git bisect bad git bisect good v1.0 git bisect reset Git操作的核心要点: 1. 理解工作区、暂存区、仓库的关系 2. 掌握分支的创建与合并策略 3. 谨慎执行会改写历史的操作 4. 定期与远程仓库同步
推荐学习路径: 1. 掌握基础命令 2. 理解.git目录结构 3. 学习高级调试技巧 4. 研究Git内部原理
提示:使用
git help <command>查看任何命令的详细文档,或访问官方文档获取完整参考。 “`
这篇文章约2300字,涵盖了Git的主要操作场景,采用Markdown格式编写,包含代码块、表格、列表等元素增强可读性。可根据需要调整内容深度或补充特定工作流示例。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。