From 7999545a2b828d22e933cc70d3823c14cba8854a Mon Sep 17 00:00:00 2001 From: Guan Yuankai Date: Mon, 15 Dec 2025 15:25:37 +0800 Subject: [PATCH] =?UTF-8?q?Doc(user):=20=E5=AE=8C=E5=96=84Readme.md?= =?UTF-8?q?=E7=9A=84=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 完善Readme,来指导整个项目的流程 --- README.md | 148 +++++++++++++++++++++++++++++++++++++++++- participants/.gitkeep | 0 2 files changed, 146 insertions(+), 2 deletions(-) create mode 100644 participants/.gitkeep diff --git a/README.md b/README.md index dfec4b0..5e2340f 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,147 @@ -# git-training-workshop +# Git 协作规范实战演练 (Git Workshop) -博诺思内部GIT实战演练项目 \ No newline at end of file +欢迎来到 Git 实战演练项目!🎉 + +本项目旨在通过实际操作,帮助大家熟悉部门的 [Git 版本控制与协作规范]。请按照以下步骤,在本项目中完成你的代码提交任务。 + +## 🎯 演练目标 + +1. 掌握 **Feature 分支** 的命名与创建。 +2. 练习 **Java/代码命名规范**。 +3. 掌握 **Commit Message** 的标准格式。 +4. **重点**:养成 Push 前 `git pull --rebase` 的肌肉记忆。 +5. 熟悉 **Pull Request (PR)** 流程。 + +--- + +## 🚀 任务流程 + +请按顺序执行以下步骤: + +### 1. 准备工作 + +首先,克隆仓库并切换到开发主干 `develop`。 + +```bash +git clone <仓库地址> +cd git-workshop +git checkout develop +git pull origin develop +``` + +2. 创建你的功能分支 + 根据规范,分支命名格式为:feat/-。 本次演练假设任务 ID 为 101,请用你的名字拼音作为描述。 + +示例:如果你的名字是夏小芮(Xia xiaorui) + +```Bash +# 格式:feat/training- +git checkout -b feat/training-xxr +``` + +3. 创建个人工作区与代码 + 为了避免演练冲突,请在 participants 目录下创建一个以你名字命名的文件夹。 + +创建目录:participants/zhangsan/ + +创建文件:在该目录下创建一个 Java 类文件,例如 UserDetail.java。 + +📝 编码规范要求 (请严格遵守): + +类名:大驼峰 (e.g., UserDetail) + +方法名:小驼峰 (e.g., getUser) + +缩进:4 个空格 (严禁使用 Tab) + +括号:K&B 风格 (左大括号不换行) + +代码示例: + +```Java +package participants.zhangsan; + +public class UserDetail { + + private String userName; + + public String getUser(int id) { + if (id <= 0) { + return "Unknown"; + } + return this.userName; + } +} +``` + +4. 提交代码 (Commit) + 将文件添加到暂存区并提交。请遵循 Conventional Commits 规范。 + +格式:(): + +```Bash +git add . +git commit -m "feat(training): add zhangsan user detail implementation" +``` + +⚠️ 注意:Commit Message 必须全英文,Subject 使用祈使句,结尾不要加句号。 + +5. ⚡️ 同步代码 (关键步骤!) + 在你开发的过程中,develop 分支可能已经有了别人的提交。为了保持提交历史整洁(线性历史),在 Push 之前,必须 进行 Rebase。 + +```Bash + # 1. 先切换回 develop 拉取最新代码 (是一个好习惯,或者直接 fetch) + git fetch origin develop + + # 2. 确保你在你的功能分支上 + git checkout feat/training-zhangsan + + # 3. 执行变基 (Rebase) + git rebase origin/develop + +``` + +如果出现冲突 (Conflict): + +手动修改冲突文件。 + +git add <冲突文件> + +git rebase --continue + +绝对禁止 在此处使用 git merge,这会产生无意义的 Merge Commit 节点。 + +6. 推送与提交 PR + 代码同步并测试无误后,推送到远程仓库。 + +```Bash +git push origin feat/training-xxr +``` + +最后一步: + +打开 Git 仓库网页 (GitLab/GitHub)。 + +创建一个 Pull Request (Merge Request)。 + +源分支:feat/training-xxr + +目标分支:develop + +在描述中引用关联 Issue(本次演练可忽略)。 + +邀请 Tech Lead 进行 Code Review。 + +# ✅ 自查清单 (Checklist) + +在提交 PR 前,请自我检查: + +[ ] 分支名是否小写?(e.g., feat/...) + +[ ] 代码缩进是否为 4 空格?左大括号是否没换行? + +[ ] Commit Message 是否符合格式?(e.g., feat(scope): ...) + +[ ] 是否执行了 Rebase 操作? (历史记录是否是一条直线?) + +Happy Coding! 💻 diff --git a/participants/.gitkeep b/participants/.gitkeep new file mode 100644 index 0000000..e69de29