You are on page 1of 1

Types of Git workflows

Basic workflow
The most popular workflow among Git developers and the entry stage of every project.

The idea is simple: there is one central repository. Each developer clones the repo, works locally
on the code, makes a commit with changes, and push it to the central repository for other
developers to pull and use in their work.

Feature branch workflow


The basic workflow is great for developing a simple website. However, once two developers start
working on two separate functionalities within one project, problems begin to appear.

Let’s say one of the developers has finished their functionality and wants to release it. However,
they cannot do that because the second feature isn’t ready. Making a release at this moment could
result in messing everything up, to say the least.

This is where branches - the core feature of Git - come in handy. Branches are independent
“tracks” of developing a project. For each new functionality, a new branch should be created,
where the new feature is developed and tested. Once the feature is ready, the branch can be
merged to the master branch so it can be released to LIVE.

Feature Branch and Merge requests


The feature branch workflow assumes that all developers on the team have equal knowledge and
position. In bigger teams, however, there’s always some form of hierarchy (Junior vs. Senior.)

In this case, you can employ merge requests and push permissions.

Before a branch is merged to master, it needs to be verified and checked for errors. Junior
developers can create a merge request and assign it to one of the Seniors, so they can review the
code and leave comments. If everything’s okay, the request is accepted and the branch is merged.

Merge requests can be combined with push permissions that allow to restrict pushing changes to
specific branches in the repository, so you can keep full control over the code.

You might also like