Git 版本控制完全指南 - 团队协作必备技能
# Git 版本控制完全指南 - 团队协作必备技能
Git 是每个开发者必须掌握的版本控制工具,本文从基础到进阶,全面讲解 Git 的使用技巧。
---
一、Git 简介
Git 是一个分布式版本控制系统,用于追踪文件的修改历史,支持多人协作开发。
核心概念
- 仓库(Repository):存储项目文件和历史版本
- 提交(Commit):保存文件修改的快照
- 分支(Branch):独立的开发线
- 合并(Merge):将不同分支的修改合并
- 远程仓库(Remote):托管在服务器上的仓库
二、安装与配置
安装 Git
macOS:
brew install git
Ubuntu:
sudo apt install git
Windows: 下载安装包:https://git-scm.com/download/win
初始配置
# 设置用户名 git config --global user.name "你的名字"# 设置邮箱 git config --global user.email "your@email.com"
# 设置默认分支名 git config --global init.defaultBranch main
# 查看配置 git config --list
---
三、基础操作
创建仓库
# 初始化新仓库 git init# 克隆远程仓库 git clone https://github.com/user/repo.git
文件状态
# 查看状态 git status# 简短状态 git status -s
添加与提交
# 添加单个文件 git add filename# 添加所有文件 git add .
# 提交 git commit -m "提交信息"
# 添加并提交 git commit -am "提交信息"
查看历史
# 查看提交历史 git log# 单行显示 git log --oneline
# 图形显示 git log --oneline --graph --all
---
四、分支管理
创建分支
# 创建新分支 git branch feature-1# 切换分支 git checkout feature-1
# 创建并切换 git checkout -b feature-2
# 新版命令 git switch -c feature-3
合并分支
# 切换到目标分支 git checkout main# 合并分支 git merge feature-1
# 删除已合并的分支 git branch -d feature-1
解决冲突
当合并出现冲突时:
# 查看冲突文件 git status# 编辑冲突文件,解决冲突标记 # <<<<<<< HEAD # 当前分支内容 # ======= # 合并分支内容 # >>>>>>> feature-1
# 解决后添加并提交 git add . git commit -m "解决合并冲突"
---
五、远程仓库
关联远程仓库
# 添加远程仓库 git remote add origin https://github.com/user/repo.git# 查看远程仓库 git remote -v
# 修改远程仓库地址 git remote set-url origin https://new-url.git
推送与拉取
# 推送到远程 git push origin main# 首次推送并设置上游 git push -u origin main
# 拉取并合并 git pull origin main
# 只拉取不合并 git fetch origin
---
六、常用技巧
1. 撤销操作
# 撤销工作区修改 git checkout -- filename# 撤销暂存区 git reset HEAD filename
# 撤销最近一次提交(保留修改) git reset --soft HEAD^
# 撤销最近一次提交(丢弃修改) git reset --hard HEAD^
2. 暂存工作
# 暂存当前修改 git stash# 查看暂存列表 git stash list
# 恢复暂存 git stash pop
# 恢复指定暂存 git stash apply stash@{0}
3. 修改历史
# 修改最后一次提交信息 git commit --amend -m "新的提交信息"# 交互式变基(修改历史提交) git rebase -i HEAD~3
4. Cherry-pick
# 选择特定提交合并到当前分支 git cherry-pick commit-hash
---
七、团队协作流程
Git Flow 模型
# 主分支 main # 生产环境 develop # 开发环境# 辅助分支 feature/* # 功能分支 release/* # 发布分支 hotfix/* # 紧急修复分支
功能开发流程
# 1. 从 develop 创建功能分支 git checkout -b feature/login develop# 2. 开发并提交 git add . git commit -m "实现登录功能"
# 3. 合并回 develop git checkout develop git merge --no-ff feature/login
# 4. 删除功能分支 git branch -d feature/login
Pull Request 流程
# 1. Fork 项目 # 2. 克隆 Fork 的仓库 git clone https://github.com/your-username/project.git# 3. 创建功能分支 git checkout -b feature/new-feature
# 4. 开发并提交 git add . git commit -m "Add new feature" git push origin feature/new-feature
# 5. 在 GitHub 上创建 Pull Request
---
八、.gitignore 配置
创建 .gitignore 文件忽略不需要追踪的文件:
# Python __pycache__/ *.py[cod] .env venv/# Node.js node_modules/ npm-debug.log
# IDE .vscode/ .idea/ *.swp
# macOS .DS_Store
# 日志 logs/ *.log
---
九、常见问题
1. 回退到某个版本
# 查看历史 git log --oneline# 回退到指定版本 git reset --hard commit-hash
# 强制推送(危险操作) git push -f origin main
2. 删除远程分支
git push origin --delete branch-name
3. 查看文件修改历史
# 查看文件历史 git log --follow filename# 查看每次提交的修改 git log -p filename
4. 找回已删除的提交
# 查看所有操作记录 git reflog# 恢复到指定提交 git reset --hard commit-hash
---
十、Git 别名
# 设置常用别名 git config --global alias.st status git config --global alias.co checkout git config --global alias.br branch git config --global alias.ci commit git config --global alias.lg "log --oneline --graph --all" git config --global alias.unstage "reset HEAD"
---
Git 是团队协作的基础,熟练掌握 Git 能大幅提升开发效率。>
下一篇预告:Linux 服务器运维入门 - 从零开始管理服务器
---
作者:廖万里 发布时间:2026年3月16日
本文链接:https://www.kkkliao.cn/?id=656 转载需授权!
版权声明:本文由廖万里的博客发布,如需转载请注明出处。



手机流量卡
免费领卡
号卡合伙人
产品服务
关于本站
