YASE - Yet Another Software Engineer
build | This covers code and artifacts related to build operations. This could be building a Docker container or compiling code (though this isn’t applicable for pure Python projects). |
---|---|
ci | This includes content related to continuous integration and continuous delivery. |
docs | All changes related to documentation, including docstrings, fall under this type. |
style | This is for formatting changes that don’t alter code logic, like adding white lines, spaces, etc. It’s all about style, not code refactoring. |
refactor | This involves actual code refactoring. It’s not just about moving lines of code around; it’s about rewriting a class, function, or other code elements to make them more readable and aligned with good design patterns. |
perf | Any modifications aimed at improving the code’s performance belong here. |
test | This type is for any code added that’s related to tests. |
chore | This is for everything else that doesn’t fit neatly into the categories above. |
For branches, please use the following naming structure:
<category>/<reference>/<description-in-kebab-case>
Where:
category
: This should be one of the types listed in the table above.reference
: This is an identification code for the specific activity or task. It corresponds to the task code assigned by ClickUp (see image 1).description-in-kebab-case
: This is a descriptive name for the task you’re working on, written in kebab-case (it could be the task title from ClickUp).Branch naming convention source
For commit titles, use this format:
<category>: Description
Where:
category
: This is the type of commit (use one of the types from table 1).Description
: This is a clear description of what was done.Follow these rules for the description:
Commit naming convention source
The repository is structured as follows:
When you need to develop a feature or, more generally, work on the code, you should create a branch from dev
. You can directly create a branch from one of the more long-lived permanent branches (like master
or stage
) when you need to make a quick and simple hotfix.
The three persistent branches mirror the structure of the Prefect environments (prod, stage, dev).
When you need to work on the code, follow these steps:
dev
and name it according to the conventions described above.dev
. If there’s a chance of conflicts, it’s advisable to avoid a direct merge and instead create a pull request to dev
. Then, you can take your time to resolve any conflicts directly within the pull request.