Files
RC_Legged/01_doc/git-init-workflow.md
T

132 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Git 仓库初始化全流程
## 环境信息
- **Gitea 地址**: `https://git.zeitvex.com`
- **仓库**: `Robocon/RC_Legged`
- **远程 URL**: `https://git.zeitvex.com/Robocon/RC_Legged.git`
- **认证方式**: HTTPS + Personal Access Token
---
## 1. 前提条件
- Gitea 服务器已搭建并运行
- 在 Gitea 上已创建组织 `Robocon` 和仓库 `RC_Legged`
- 本机已安装 Git(验证:`git --version`
- 已生成 Personal Access Token(路径:Gitea → Settings → Applications → Generate New Token
---
## 2. 初始化本地仓库
```bash
cd /path/to/RC_Legged
git init
git checkout -b main
```
---
## 3. 创建目录结构
```bash
mkdir -p 01_doc
mkdir -p 02_mechanical/CAD
mkdir -p 02_mechanical/STL
mkdir -p 02_mechanical/URDF
mkdir -p 03_hardware/PCB
mkdir -p 03_hardware/BOM
mkdir -p 03_hardware/datasheet
mkdir -p 04_firmware/motor_driver
mkdir -p 04_firmware/sensor_board
mkdir -p 05_software/rl_training/configs
mkdir -p 05_software/rl_training/envs
mkdir -p 05_software/rl_training/logs
mkdir -p 05_software/ros_ws/src
mkdir -p 05_software/ros_ws/scripts
mkdir -p 05_software/utils
mkdir -p 06_assets
```
---
## 4. 创建 .gitignore
文件内容参考 `.gitignore`,其中:
```
00_reference/
```
用于排除本地参考项目,不纳入版本管理。
---
## 5. 创建 README.md
项目首页,包含项目简介、目录结构、远程仓库地址。
---
## 6. 创建 项目规范.md
版本管理规范,包含:
- 分支策略:`main``main-nightly``task-*`
- Commit Message 格式:`[tag] 描述`
- Code Review 流程
- 硬件测试规范
---
## 7. 首次提交
```bash
git add -A
git commit -m "[init] RC_Legged 项目初始化"
```
---
## 8. 关联远程仓库并推送
```bash
git remote add origin https://git.zeitvex.com/Robocon/RC_Legged.git
git push -u origin main
```
> 推送时 Git 会提示输入用户名和密码,密码处填入 Personal Access Token。
---
## 9. 配置分支保护
在 Gitea 网页上操作:
1. 进入仓库 → **Settings****Branches****Branch Protection**
2. 选择 `main` 分支
3. 启用保护规则(如禁止强制推送、禁止直接推送等)
---
## 10. 后续开发流程
```bash
# 拉取最新代码
git pull
# 创建任务分支
git checkout -b task-<name> main-nightly
# 日常提交
git add <file>
git commit -m "[tag] 描述"
git push origin task-<name>
# 合并到 main-nightly(在 Gitea 上创建 Pull Request
# 稳定后合入 main
```
---
*文档版本: v1.0 / 2026-06-25*