Skip to content

feat: setup devcontainer settings for unified dev experience - #264

Merged
ukeSJTU merged 19 commits into
developfrom
feat/setup-devcontainer
Dec 28, 2025
Merged

feat: setup devcontainer settings for unified dev experience#264
ukeSJTU merged 19 commits into
developfrom
feat/setup-devcontainer

Conversation

@ukeSJTU

@ukeSJTU ukeSJTU commented Dec 28, 2025

Copy link
Copy Markdown
Owner

描述

为项目添加完整的 VS Code Dev Container 配置,提供开箱即用的容器化开发环境。开发者只需安装 Docker 和 Dev Containers 扩展,即可在统一的环境中快速启动项目,无需手动配置 Node.js、pnpm、PostgreSQL 等依赖。

相关问题

Resolves #263

变更类型

  • Bug 修复(不会破坏现有功能的非破坏性变更)
  • 新功能(添加功能的非破坏性变更)
  • 破坏性变更(会导致现有功能无法正常工作的修复或功能)
  • 文档更新
  • 性能改进
  • 代码重构
  • CI/CD 改进

测试

  • 我已经在本地测试了这些更改
  • 我已经添加了证明我的修复有效或我的功能工作的测试
  • 新的和现有的单元测试在我的更改下都能通过
  • 我已经检查了代码能够无错误地构建

截图(如果适用)

添加截图来帮助解释你的更改。

检查清单

  • 我的代码遵循此项目的代码风格
  • 我已经对自己的代码进行了自我审查
  • 我已经对代码进行了注释,特别是在难以理解的地方
  • 我已经对文档进行了相应的更改
  • 我的更改没有产生新的警告
  • 我已经添加了证明我的修复有效或我的功能工作的测试
  • 新的和现有的单元测试在我的更改下都能通过

代码审查检查清单(供审查者使用)

  • 代码可读且有良好的文档
  • 更改经过了适当的测试
  • 没有明显的性能问题
  • 已解决安全考虑
  • 破坏性变更已得到适当记录

附加说明

mac m2 电脑实测从头开始 build devContiner 消耗 5-10 分钟(取决于网络速度)

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @ukeSJTU, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

这个拉取请求引入了完整的 VS Code Dev Container 配置,旨在为项目提供一个统一且开箱即用的容器化开发环境。通过集成 Dockerfile、Docker Compose 和初始化脚本,它自动化了 Node.js、pnpm 和 PostgreSQL 等核心依赖的安装与配置,并预设了 VS Code 扩展和工作区设置,极大地简化了新开发者的上手流程,确保了团队成员之间开发环境的一致性。

Highlights

  • 完整的 Dev Container 配置: 为项目添加了完整的 VS Code Dev Container 配置,提供开箱即用的容器化开发环境。
  • 统一的开发环境: 开发者只需安装 Docker 和 Dev Containers 扩展,即可在统一的环境中快速启动项目,无需手动配置 Node.js、pnpm、PostgreSQL 等依赖。
  • 自动化设置: 包含 Dockerfile、docker-compose.yml 和一系列初始化脚本,自动化了依赖安装、数据库设置、环境变量配置和 VS Code 扩展推荐。

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

gemini-code-assist[bot]

This comment was marked as resolved.

@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 06:23 — with GitHub Actions Inactive
Comment thread .github/workflows/devcontainer.yml Fixed
@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 06:40 — with GitHub Actions Inactive
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 06:46 — with GitHub Actions Inactive
@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 16:34 — with GitHub Actions Inactive
@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 16:40 — with GitHub Actions Inactive
@ukeSJTU
ukeSJTU temporarily deployed to github-pages-preview December 28, 2025 16:49 — with GitHub Actions Inactive
@ukeSJTU

ukeSJTU commented Dec 28, 2025

Copy link
Copy Markdown
Owner Author

/gemini review

@github-actions

github-actions Bot commented Dec 28, 2025

Copy link
Copy Markdown
Contributor

🗑️ Preview Deployment Cleaned Up

The preview deployment for this PR has been removed from GitHub Pages.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

本次 PR 引入了一套完整的 devcontainer 配置,为项目提供了统一且开箱即用的开发环境,极大地简化了新成员的上手流程,这是一个非常棒的改进。Dockerfile、docker-compose.yml 和 devcontainer.json 的设计都遵循了最佳实践,例如使用非 root 用户、通过命名卷缓存依赖、预置丰富的开发工具和插件等。文档也编写得非常详尽。我发现了一些可以进一步完善的地方,主要集中在脚本优化和文档准确性上,希望能帮助你让这个功能更加完美。

Comment thread DEVCONTAINER.md
Comment thread .devcontainer/Dockerfile
Comment thread .devcontainer/init-scripts/postCreateCommand.sh
Comment thread .devcontainer/init-scripts/postCreateCommand.sh
@ukeSJTU
ukeSJTU merged commit 3e37d62 into develop Dec 28, 2025
15 of 16 checks passed
@ukeSJTU
ukeSJTU deleted the feat/setup-devcontainer branch December 28, 2025 17:35
github-actions Bot added a commit that referenced this pull request Dec 28, 2025
github-actions Bot added a commit that referenced this pull request Dec 28, 2025
* chore: add .gitattributes for consistent line endings and shell script support

* chore(vscode): add extensions.json for recommended VSCode extensions

* feat(devcontainer): add Dockerfile for development environment setup

* feat(devcontainer): add docker-compose.yml for development environment setup

* feat(devcontainer): add devcontainer.json for development environment setup

* feat(devcontainer): add initialization scripts for development environment setup

* feat(devcontainer): add GitHub Actions workflow for DevContainer validation

* feat(devcontainer): add DevContainer setup guide for development environment

* feat(devcontainer): update VSCode extensions and database configuration for environment

* feat(devcontainer): update Dockerfile and docker-compose for environment variable support

* fix: add read permission for devcontainer verification workflow

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* feat(devcontainer): enhance CI environment setup for faster initialization

* feat(devcontainer): enhance validation steps for improved visibility and control

* feat(devcontainer): improve CI environment setup for better control and visibility

* refactor(ci): remove devcontainer verification workflow script

* fix(devcontainer): update node version to 22 for consistency across configurations

* fix(devcontainer): switch pnpm installation method to npm for better reliability

* fix(devcontainer): remove unused environment variables for cleaner configuration

* fix(devcontainer): ensure pnpm store directory is created before configuration

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> 3e37d62
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] 添加 Dev Container 配置以统一开发环境

2 participants