Skip to content

What is a Branch ?

Konijima edited this page Nov 12, 2021 · 16 revisions

Description

A branch represents an independent line of development.
Branches allow you to develop features, fix bugs, or safely experiment with new ideas in a contained area of your repository.
You always create a branch from an existing branch. In CommunityAPI, you might create a new branch from the dev branch.

Visit How to Contribute ? to learn how to use the branches.

Our branches

Main Branches:

  • master = Stable released version (Live version on Steam Workshop).
  • dev = Development version.

Temporary Branches:

  • feature = Created from dev branch when creating or developing a feature.
  • release = Created from dev branch target features are ready for an update.
  • hotfix = Created from master branch when a hotfix need to be done.

Feature branches:

May branch off from: dev
Must merge back into: dev

Release branches:

May branch off from: dev
Must merge back into: dev & master

Hotfix branches:

May branch off from: master
Must merge back into: dev & master

Git Flow

How do I name my branch ?

If your changes only update Documentations:
You may name it <api_name/feature_name>-doc-update

If your changes is a new api/feature:
You may name it <api_name/feature_name>-new

If your changes modify or fix an existing feature:
You may name it <api_name/feature_name>-update or <api_name/feature_name>-fix

What keyword I cannot use for my branch name ?

Those keywords are reserved for specific branches.
You cannot use dev, release or hotfix in the naming of your branch for common development.

What happen to my branch after a Pull request merge my changes in the dev branch ?

Your branch will be automatically deleted from the remove repository as the changes have been integrated.
On your local machine the branch will remain, if you do not have new commits in that branch you can delete it safely to keep it clean.
If the remote branch is deleted and you didn't finish on your local machine, you will be able to re-publish it.

How to use Github


How to use IntelliJ


How to create a mod


How to create an API


Media Tutorials

Clone this wiki locally