We thank everyone who takes the time to contribute to YOCO!
In this document, We would like to address some steps before contributing to YOCO. If you want to jump to right in, we recommend starting with this document.
Clicking on an item in the list of content will take you directly to that section.
Since the work of the code owners in YOCO all originates from issues, we recommend that contributors also create an issue before they begin working in earnest.
- Go to
Issue
in this repository. - Create a new post by clicking
New Issue
. - There will be 2 type of your work,
Feature
andBug Report
. - By clicking
Get Started
of one of two, the contributors can create Issue. - After filling up the description and submitting it, Now you can add a new Pull Request.
To enable collaborators to deduce the nature of code changes that will be recorded in the history, YOCO introduces a commit convention.
All of your commits must include one of the following indicators, and deviating from this standard may result in an error during the commit:
[chore]
Modifications related to the build process, package manager, or project settings[docs]
Modifications and additions to documentation[feat]
Work on adding new features[fix]
Bug fixes and typo corrections[refactor]
Improvements to existing code[style]
Code formatting unrelated to functionality, such as missing semicolons or quote adjustments[test]
Work related to test code
For example, if you find a typo in a document and want to correct it, a good commit message would be:
[fix] typo in contributing.md
Thank you for being here. If you're trying to submit the new pull request on your end, we can guess there will be at least one issue on your end. In this section, few information good to know will be supplied.
If you want to make some changes or add new feature, We recommend you to fork this repository first since there will be few tests running should be passed in your local environment too.
To fork and clone the repository:
-
Following guide of Create a fork, fork the
YOCO
repository to freely experiment with branches and changes. -
Clone your fork to your local environment.
# starting in a directory of your choice
cd ~/Documents/Github
# clone your fork of the repository
git clone [email protected]:your-github-name/YOCO.git
- Create a
remote
to keep your clone and fork (https://github.com/your-github-name/YOCO
) up-to-date.
# starting in your clone directory
cd ~/Documents/Github/YOCO
git remote add upstream [email protected]:YOCOING/YOCO.git
When you run git remote -v
, you'll see that you have two remotes: upstream
and origin
.
The origin
remote is your fork (https://github.com/your-github-name/YOCO
) and the upstream
remote is the YOCOING/YOCO
repository.
Once you've done with your work in local environment, you need to submit pull request to be merged. This section describes how to build the project locally and how to prepare your changes for submission.
- Go to your forked repository. (Before creating new pull request, kindly check if your forked
dev
branch is up to date.) - Go To Pull requests tab and click New pull request
- Base repository will be your remote branch, and head repository will be your local branch.
- If you find some conflict, we recommend to fix it before submitting pull request.
- Fill up the templates regarding your pull request.
- In the pull request description, the top section should include "Closes [issue link]" with your specific issue number, like
#issue-number
. By doing this, when the pull request is merged, your issue will also be automatically closed.
- Please keep in mind, If the feature you are adding is a new functionality that did not exist before, or if it enhances an existing code with additional features, you may also need to include test code. This ensures that the new or enhanced functionality works as expected and maintains the overall quality of the project.
Submitted pull requests fundamentally require approval from two of the code owners before they can be merged into the remote branch. When you submit a pull request, review requests are automatically sent to the code owners. Reviews typically take several days, and may take longer depending on the volume of code changes submitted.
When your pull request is submitted, it must pass several tests. You can see the status of these tests at the bottom of the submitted pull request. If these tests fail, you may receive a request for corrections from the code owner, or your code may be modified by the code owner.
We support English and Korean! All maintenance for YOCO is conducted in English, but contributions from all contributors are supported in both English and Korean. Therefore, you can choose the language you are comfortable with to write in, and then translate your contributions into either English or Korean to complete all procedures.