Revise overview document to enhance clarity and structure

- Updated the title to "Overview & Purpose" for better context.
- Refined the purpose section to emphasize the document's role as a central reference for game development workflows.
- Introduced a new section outlining the document's scope and expected benefits for development teams, code delivery, and the organization.
- Streamlined content by removing outdated sections and consolidating key workflow components.
- Added clear headings and bullet points for improved readability and navigation.
This commit is contained in:
Le Hoang Nam 2025-09-12 16:41:26 +07:00
parent 7dc995dcd9
commit 419a93837f

View File

@ -3,104 +3,72 @@ id: 01-overview
title: Overview title: Overview
--- ---
# Overview # Overview & Purpose
## Purpose ## Document Purpose
This document provides comprehensive information about our development workflow, including GitFlow workflow management, CI/CD pipeline integration with Jenkins, Gitea repository management, release processes, and detailed setup instructions for all components. It serves as the central reference for developers to understand and implement our standardized development practices and workflows.
## Document Structure This development workflow document serves as the **central reference guide** for all developers involved in our **game development process**. It defines standardized practices, procedures, and guidelines to ensure consistency, efficiency, and high-quality delivery across all projects.
The development workflow documentation is organized into the following main sections:
### 1. **GitFlow Workflow** ### Why This Document Exists
- Branching strategy and naming conventions - **Game Development Standardization** → Provides uniform processes across projects.
- Feature, develop, release, and hotfix branch workflows - **Rapid Onboarding** → Helps new team members quickly learn workflows.
- Pull request and code review processes - **Quality Assurance** → Enforces practices that maintain technical and delivery standards.
---
## Document Scope
### What This Workflow Covers
🔄 **Version Control & Branching Strategy**
- Git workflow and branching model for game development
- Branch naming conventions and protection rules
- Merge strategies and conflict resolution - Merge strategies and conflict resolution
- Code versioning and change tracking
### 2. **Gitea Management** 🔍 **Code Review & Quality Assurance**
- Repository setup and configuration - Pull request process and review guidelines
- User and team management - Code quality standards and best practices
- Access control and permissions - Automated testing and quality gates
- Webhook configuration for CI/CD integration - Security checks and compliance validation
- Gitea Actions setup and configuration
### 3. **Jenkins CI/CD Pipeline** 📝 **Code Standards & Conventions**
- Jenkins server setup and configuration - Coding style guidelines and formatting rules
- Pipeline job definitions and configurations - Naming conventions for variables, functions, and classes
- Build, test, and deployment automation - Documentation standards and comment requirements
- Integration with Gitea and other tools - Code organization and structure guidelines
- Monitoring and notification systems - Language-specific best practices and patterns
### 4. **Release Management** 🚀 **Continuous Integration / Continuous Deployment (CI/CD)**
- Release planning and versioning strategy - Automated build and testing pipelines
- Release branch creation and management - Game build automation for Web, Mobile, and Desktop platforms
- Deployment procedures and environments - Deployment processes and environment management
- Rollback strategies and emergency procedures - Rollback procedures and monitoring
- Release notes and documentation
### 5. **Setup and Configuration** ---
- Step-by-step setup instructions for Gitea
- Jenkins installation and configuration
- Gitea Actions setup and workflow configuration
- Environment-specific configurations
- Troubleshooting guides and common issues
## Key Workflow Components ## Expected Benefits
### Development Cycle ### For Development Teams
1. **Feature Development**: Create feature branches from develop - **Faster Onboarding** → New members quickly understand workflows.
2. **Code Review**: Submit pull requests for review and approval - **Consistent Code Quality** → Standardized reviews improve maintainability.
3. **Integration**: Merge approved features into develop branch - **Reduced Conflicts** → Clear branching prevents merge issues.
4. **Release Preparation**: Create release branches from develop - **Automated Quality Gates** → CI/CD pipelines catch issues early.
5. **Testing & Deployment**: Automated testing and deployment via Jenkins - **Code Consistency** → Shared conventions improve readability.
6. **Release**: Merge release branches to master and develop - **Faster Development** → Less decision overhead, smoother collaboration.
7. **Hotfixes**: Emergency fixes directly from master branch
### Automation Benefits ### For Code Delivery
- **Continuous Integration**: Automated builds and testing on every commit - **Predictable Releases** → Structured CI/CD ensures reliable deployments.
- **Quality Gates**: Automated code quality checks and security scans - **Reduced Bugs** → Automated tests prevent regressions.
- **Deployment Automation**: Consistent and repeatable deployment processes - **Faster Delivery** → Streamlined pipelines shorten release cycles.
- **Monitoring**: Real-time feedback on build and deployment status - **Better Traceability** → Gitflow tracks all code changes.
- **Maintainable Code** → Consistency simplifies future updates.
- **Reduced Technical Debt** → Standards discourage poor practices.
## How to Use This Documentation ### For the Organization
- **Scalability** → Processes work across projects and teams
- **Code Reusability** → Shared practices support component reuse
- **Knowledge Retention** → Documented processes preserve expertise
- **Risk Reduction** → Clear workflows reduce release and operational risks
### For Developers ---
- Follow the GitFlow workflow for all code changes
- Use the setup guides to configure your local development environment
- Reference the release procedures when preparing for releases
- Check troubleshooting guides for common issues
- Understand how your code changes trigger CI/CD pipelines
- Learn how to work with Gitea repositories and pull requests
- Familiarize yourself with release processes and versioning
## Contributing to Workflow Documentation
To contribute improvements or updates to the workflow documentation:
1. Clone the repository: `git clone [repository-url]`
2. Create a feature branch: `git checkout -b feature/workflow-improvement`
3. Make your changes following the established documentation structure
4. Ensure all setup instructions are tested and verified
5. Commit and push your changes with descriptive commit messages
6. Open a Pull Request with detailed description of changes
7. Request review from relevant team members
:::note
Please ensure all workflow changes are tested in a staging environment before updating production documentation.
:::
:::tip
Keep documentation up-to-date with actual workflow implementations. Outdated documentation can cause confusion and workflow issues.
:::
## Getting Started
If you're new to our development workflow:
1. Start with the **GitFlow Workflow** section to understand our branching strategy
2. Review **Gitea Management** for repository access and permissions
3. Check **Jenkins Setup** for CI/CD pipeline understanding
4. Familiarize yourself with **Release Management** procedures
5. Use **Setup Guides** to configure your development environment
For immediate assistance, contact the DevOps team or refer to the troubleshooting sections in each component's documentation.