[T.3] 团队项目:团队基础设施及 DevOps 准备

这个作业属于哪个课程 北航2026年春季软件工程
这个作业的要求在哪里 [T.3] 团队项目:团队基础设施及 DevOps 准备
我在这个课程的目标是 提升团队协作与项目管理能力
这个作业在哪个具体方面帮助我实现目标 完成团队基础设施及 DevOps 准备

服务器选择

由于本项目定位为单机卡牌游戏,核心逻辑与资源处理均在客户端完成,因此在开发阶段无需购置或配置云服务器

  • 开发架构:采用 Electron 框架进行本地开发。通过将 Chromium 和 Node.js 集成到单一运行时中,实现跨平台的桌面端应用体验。
  • 部署逻辑:游戏资源(卡牌数据、美术素材等)随客户端一同打包,利用本地存储处理游戏存档,有效降低了网络延迟并节省了维护成本。

团队沟通,协作与代码管理

为了确保信息的实时性与沉淀性,我们构建了多维度的沟通协作体系:

  • 实时沟通:利用微信进行日常即时通讯与快速事务响应;针对深度问题或复杂逻辑,定期开展线下交流,以提高沟通带宽和决策效率。
  • 线上会议与文档
    • 使用飞书会议进行远程同步与会议。
    • 使用飞书文档记录项目的所有过程资料,包括需求列表、功能说明和技术调研。
    • 所有的会议纪要和待办事项(To-Do List)也会在飞书文档中实时更新,确保每个成员都清楚当前的研究重点和开发节奏。
  • 代码管理工作流
    • 托管平台:代码统一托管于 GitHub
    • 分支策略:采用典型的 Feature-Branch 模型。每位成员在各自的 dev 分支上进行功能开发。
    • 主分支保护:对 main 分支设置保护规则,强制要求通过 PR 并经过 Code Review 后方可合并,确保生产环境代码的稳定性。

CI/CD

我们基于 GitHub Actions 搭建了自动化流水线,将质量保障与构建流程嵌入开发循环中。主要环节包括:

  1. 代码风格约束:启动 Prettier 检查,强制统一代码格式,减少不必要的格式争议。
  2. 自动化测试:运行单元测试与集成测试,确保新代码合并不会破坏现有卡牌逻辑。
  3. LFS 更新:由于卡牌游戏包含较多美术资源,流水线会自动处理 Git LFS 的同步与更新,确保构建镜像包含最新的二进制资源。
  4. 构建与打包
    • 流水线会自动执行 Electron 的构建命令(如 electron-builder)。
    • 针对不同操作系统(macOS/Windows)生成对应的安装包/执行文件,实现持续交付。
name: action

on:
  push:
    branches: [ main ]
  pull_request:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
        with:
          lfs: true

      - name: Install Git LFS and pull LFS files
        run: |
          sudo apt-get update
          sudo apt-get install -y git-lfs
          git lfs install --local
          git lfs pull || true

      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '24'

      - name: Install dependencies and run action
        run: npm run action

image

posted @ 2026-04-15 12:48  魔法细胞  阅读(7)  评论(0)    收藏  举报