Git工作流程详解:从零开始掌握团队协作的核心步骤
Git作为分布式版本控制系统,凭借其强大的分支管理和协作能力,成为开发者必备工具。本文将通过10个步骤详解标准Git工作流程,包含代码示例和最佳实践,助你快速上手团队协作开发。
1. 克隆远程仓库
git clone https://github.com/username/repo.git
cd repo
- 作用:将远程仓库完整复制到本地,包含所有提交历史、分支和标签
- 注意:首次操作需配置用户名和邮箱(全局配置一次即可)
git config --global user.name "YourName"
git config --global user.email "you@example.com" #
2. 创建开发分支
git checkout -b new-feature # 创建并切换分支
- 为何需要分支:
- 隔离开发环境,避免污染主分支(main/master)
- 支持并行开发多个功能
- 查看分支:
git branch
显示所有本地分支,当前分支前带*
号
3. 修改工作区文件
- 操作类型:
- 新增文件:
touch demo.py
- 修改文件:vim/nano等编辑器操作
- 删除文件:
rm obsolete.txt
- 新增文件:
- 查看变更:
git status # 查看文件状态
git diff # 查看具体修改内容
4. 暂存修改内容
git add README.md # 添加单个文件
git add . # 添加所有修改(慎用!)
- 暂存区作用:筛选要提交的修改,支持部分提交
- 撤销误添加:
git reset HEAD README.md # 从暂存区移除特定文件
5. 提交到本地仓库
git commit -m "添加用户登录功能" # 提交说明需清晰
- 提交规范:
- 首行不超过50字符
- 正文详细描述修改原因和影响
- 修改上次提交:
git commit --amend # 修改提交信息或追加文件
6. 同步远程更新
# 在主分支开发时
git pull origin main
# 在特性分支开发时
git pull origin new-feature # [[2, 20]]
- 冲突处理:
- 出现冲突时,文件中会有
<<<<<<<
标记 - 手动修改后执行
git add
和git commit
- 出现冲突时,文件中会有
- 强制覆盖本地(慎用!):
git reset --hard # 丢弃所有本地修改
7. 推送至远程仓库
git push origin new-feature
- 首次推送需设置上游分支:
git push -u origin new-feature # 后续可直接git push
- 权限问题:若无推送权限需创建Fork仓库
8. 发起合并请求(PR/MR)
- 在GitHub/GitLab页面点击"New Pull Request"
- 选择
new-feature
→main
分支 - 填写变更说明,@相关人员评审
- 根据评审意见修改后重新推送
9. 合并到主分支
git checkout main
git pull origin main # 确保本地最新
git merge new-feature # 合并分支
- 解决冲突:
- 合并后运行测试确保功能正常
- 使用
git mergetool
可视化解决冲突
10. 清理分支
# 删除本地分支
git branch -d new-feature
# 删除远程分支
git push origin --delete new-feature #
- 强制删除:
-D
参数强制删除未合并分支
git branch -D experimental # 慎用!
最佳实践
- 提交粒度:每次提交解决一个具体问题
- 频繁同步:每天至少执行一次
git pull
- 分支策略:
main
:稳定版本dev
:集成测试环境feature-*
:功能开发分支
- .gitignore:配置忽略日志、编译产物等临时文件