Welcome to openGemini！
Experience the openGemini in the following ways:
Log in to GitHub and register with a common email address. The email address is used to sign the DCO and configure the SSH public key.
Sign the openGemini DCO (Developer Certificate of Origin) and comply with the original contract. Each time you submit a PR, you need to use the email address to sign the DCO.
Learn about and participate in a variety of community activities.
The openGemini community is organized into SIGs to better manage the work processes. SIGs are open to anyone, and finding your perfect SIG is the first step to contributing to community affairs.
Currently, The openGemini community has just been established and the SIG is being prepared.
If you fail to find the SIGs you are interested in and want to start a new SIG for maintenance and development in the openGemini community, refer to Application Process
On the GitHub homepage of the SIG project you are interested in, click Issues（for example, the issues of the Community project).
If you want to report bugs, submit requests, or contribute your comments or suggestions to the openGemini community, submit an issue in the corresponding repository of the openGemini community.
There are discussions among participants on each issue. If you are interested in an issue, you can also post your comments in the comment box.
If you want to work on one of those issues, you can assign it to yourself. Type /assign or /assign @your_account_name in the comment box. The system will assign the issue to you and your name will appear in the owner list.
Prepare Go and Python development environment before contributing code.
Before contributing code, learn how to download code from GitHub and merge code through pull requests (PRs). openGemini code is hosted on the GitHub platform. For details, see GitHub Workflow Guide. If you have used GitHub before, skip this section.
After the modification is complete on the local branch, build and local debugging and verification. For details, see the Code Debugging Guide.
Creating a PR means that you are contributing code to the community. For details, see Creating a Pull Request.
To make your PR easier to be accepted, you need to:
Note: If your PR does not attract enough attention, you can ask for help through the SIG mailing list or firstname.lastname@example.org
If you find that other third-party software systems and tools do not support openGemini, or openGemini does not support some other operating systems, CPU architectures, and storage systems, you can contribute the capacity to openGemini community. At the same time, the community will release the ecosystem tool development task in ISSUE. You can also take over the task. In fact, the process of contributing tools is the process of helping openGemini thrive in the ecosystem, making openGemini with a wide technical ecosystem.
If you want to contribute your original openGemini-based open source project or solution to the openGemini community, create original projects directly at https://github.com/openGemini and "host" the projects to the openGemini community.
openGemini is an open community and everyone involved is expected to be an active reviewer. When you are a committer or maintainer of a SIG, you have the responsibility and permission to review code. Everyone in the community is encouraged to pursue excellence and promote collaboration on the ground of the Code of Conduct and mutual respect. The Gentle Art Of Patch Review lists a series of review highlights. Code review activities are expected to promote the active participation of new contributors without causing the contributors to be overwhelmed by minor errors at the beginning. Therefore, during the review, focus on the following:
1. Whether the idea behind the contribution is reasonable.
2. Whether the contribution architecture is correct.
3. Whether the contribution is complete.
To successfully release a community version, you need to complete multiple test activities. The location of the test code varies according to the test activity, so do the details of the environment required for successful test running. For details, see Test Contribution Guide for Community Developers.
If your interest is not in writing code, you can find work of interest in the Non-Code Contributions.
Everyone in the community plays an important part. Roles differ in terms of responsibilities and permissions. Grow, accumulate experience, and gain influence by contributing to the community. For details about roles, responsibilities, and permissions, see Community Membership
The openGemini Technical Committee (TC) is the technical decision-making body of the openGemini community. It is responsible for technical decision-making and coordination of technical resources in the openGemini community.