感谢您对 GateSentinel 项目的关注!我们欢迎各种形式的贡献。
- 严重 Bug: 请立即通过 GitHub Issues 报告
- 功能请求: 通过 GitHub Issues 提交
- 一般问题: 可在知识星球进行讨论
- Bug 修复: Fork 项目并提交 Pull Request
- 新功能: 先在 Issues 中讨论,然后提交 PR
- 文档改进: 帮助完善文档和示例
- 在不同环境下测试项目
- 报告兼容性问题
- 提供性能测试结果
# 克隆项目
git clone https://github.com/kyxiaxiang/GateSentinel.git
cd GateSentinel
# 安装依赖
cd server
go mod tidy
# 运行测试
go test ./...
# 构建
go build -o gatesentinel# Windows 环境 (需要 MinGW 或 Visual Studio)
cd beacon
gcc -o beacon.exe beacon.c http.c tasks.c utils.c -lwininet -ladvapi32 -lkernel32 -luser32 -DUNICODE -D_UNICODE- 使用
gofmt格式化代码 - 遵循 Go 官方编码规范
- 添加适当的注释
- 编写单元测试
- 使用一致的缩进 (4 个空格)
- 函数和变量命名使用下划线分隔
- 添加必要的错误处理
- 避免内存泄漏
-
Fork 项目
# 在 GitHub 上 Fork 项目 git clone https://github.com/your-username/GateSentinel.git -
创建分支
git checkout -b feature/your-feature-name
-
提交更改
git add . git commit -m "feat: add your feature description"
-
推送分支
git push origin feature/your-feature-name
-
创建 Pull Request
- 在 GitHub 上创建 PR
- 详细描述更改内容
- 关联相关的 Issues
使用 Conventional Commits 规范:
feat:新功能fix:Bug 修复docs:文档更新style:代码格式调整refactor:代码重构test:测试相关chore:构建过程或辅助工具的变动
- 确保代码符合项目的安全要求
- 不要提交敏感信息 (密钥、密码等)
- 测试您的更改在不同环境下的兼容性
- 遵守开源协议和法律法规
Thank you for your interest in the GateSentinel project! We welcome all forms of contributions.
- Critical Bugs: Report immediately via GitHub Issues
- Feature Requests: Submit through GitHub Issues
- General Questions: Discuss in our Knowledge Planet community
- Bug Fixes: Fork the project and submit Pull Requests
- New Features: Discuss in Issues first, then submit PR
- Documentation: Help improve documentation and examples
- Test the project in different environments
- Report compatibility issues
- Provide performance testing results
# Clone the project
git clone https://github.com/kyxiaxiang/GateSentinel.git
cd GateSentinel
# Install dependencies
cd server
go mod tidy
# Run tests
go test ./...
# Build
go build -o gatesentinel# Windows environment (requires MinGW or Visual Studio)
cd beacon
gcc -o beacon.exe beacon.c http.c tasks.c utils.c -lwininet -ladvapi32 -lkernel32 -luser32 -DUNICODE -D_UNICODE- Use
gofmtto format code - Follow official Go coding standards
- Add appropriate comments
- Write unit tests
- Use consistent indentation (4 spaces)
- Use underscore-separated naming for functions and variables
- Add necessary error handling
- Avoid memory leaks
- Fork the Project
- Create a Branch
- Commit Changes
- Push Branch
- Create Pull Request
Use Conventional Commits specification:
feat:New featuresfix:Bug fixesdocs:Documentation updatesstyle:Code formattingrefactor:Code refactoringtest:Testing relatedchore:Build process or auxiliary tool changes
- Ensure code meets project security requirements
- Do not commit sensitive information (keys, passwords, etc.)
- Test your changes for compatibility across different environments
- Comply with open source licenses and legal regulations