写在开始:
1️⃣本文仅仅用作个人记录学习使用,如何涉及版权等其他问题,辛苦及时联系小编修改或者下架,全文预计1900字左右,阅读时间5min;
2️⃣内容摘要: 本文主要介绍GIT以及常用命令;
一、Git简介
Git是分布式版本控制系统,在Java后端开发中主要用于:
- 代码版本管理
- 团队协作开发
- 功能分支管理
- 生产版本控制
- 代码变更追踪
典型应用场景:
- 多人协作开发微服务模块
- 管理Spring Boot项目迭代
- 维护多环境配置(dev/test/prod)
- 处理紧急生产问题修复
二、高频命令与场景解析
1. 分支管理
Git 分支管理是 Git 强大功能之一,能够让多个开发人员并行工作,开发新功能、修复 bug 或进行实验,而不会影响主代码库。
几乎每一种版本控制系统都以某种形式支持分支,一个分支代表一条独立的开发线。
使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
创建新分支并切换到该分支:(开发新功能)
git checkout -b
eg : git checkout -b feature/kaka-test
删除已合并的本地分支(清理开发分支)
git branch -d feature/old-module
强制删除未合并的分支(清理开发分支)
git branch -D feature/old-module
删除远程分支(清理测试分支)
git push origin --delete test/experimental
查看所有分支:
git branch
git branch -r #查看远程分支
git branch -a #查看所有本地和远程分支
2. 代码同步
拉取远程master最新代码(每日晨会同步)
git checkout master
git pull origin master
强制同步远程仓库(解决本地冲突不可调和时)
git fetch --all
git reset --hard origin/master
3. 合并与冲突解决
合并master到当前分支(功能开发完成后)
切换分支命令: git checkout (branchname)
git checkout feature/kaka-test
git merge master
终止合并(当发现严重冲突时)
git merge --abort
4. 提交优化
带详细说明的提交(推荐格式)
git commit -m "feat(payment): 新增支付接口
紧急修复时跳过检查(慎用)
git commit -m “hotfix: 紧急修复订单状态异常” --no-verify
三、进阶命令手册
命令 应用场景 注意事项
git stash 临时保存未完成修改 处理紧急bug时使用
git rebase -i合并/修改提交历史 不要用于已推送的提交
git cherry-pick选择性合并提交 处理热修复时常用
git reflog恢复误删分支/提交 开发者的后悔药
git tag -a生产版本标记 配合SemVer规范使用
四、Java项目最佳实践
分支策略
- master:生产环境代码
- release/*:预发布分支
- feature/*:功能开发分支
- hotfix/*:紧急修复分支
提交规范
- feat: 新功能/新需求 或者用 feature/{需求task ID}/{简要描述}。注意:不建议用下划线“_”,建议用“-”
- fix: 问题修复/缺陷修复, 或者用 bugfix/{缺陷task
ID}/{简要描述}。注意:不建议用下划线“_”,建议用“-” - docs: 文档变更
- style: 代码格式
- refactor:重构代码
- test: 测试相关
- chore: 构建/工具变更
.gitignore配置要点
Java项目模板
*.class
*.jar
*.war
/target/
.idea/
.iml
/logs/
application-.properties
五、总结与推荐
开发流程建议:
每日开始前从master拉取最新
功能开发使用独立分支
提交前运行mvn verify
合并前解决所有冲突
使用GitLab CI/Jenkins自动化部署
学习资源推荐:
官方文档:https://git-scm.com/doc
图形化工具:SourceTree/GitKraken
参考文档链接:https://www.runoob.com/git/git-branch.html
git指令大全:https://www.processon.com/view/link/5c6e2755e4b03334b523ffc3#map
写在最后 : 码字不易,如果觉得还不错,或者对您有帮助,麻烦动动小手,点赞或关注,谢谢!