Git Basics – External Resources

Why Use Git

What Files to Store in Git

Generally, complete project configuration must be in Git to facilitate potential recreation of the partition from scratch.

Versioned Files

Not Versioned Files

Interaction of Git with Other Tools

Let’s recap here how Git fits into the landscape and how it interacts with other tools.

tools.drawio

Local GIT repository:

Remote GIT repository:

cooperation studio git

Pricefx Git Workflow

While implementing a solution, all developers should use the same common workflow in Git. You can see all important aspects of the workflow in the picture.

If you are familiar with GitFlow, you will find this flow quite similar. The main reason for differences is that in Pricefx case, the configuration can only be tested against some partitions.

pricefx gitflow.drawio

Branches

Partitions

Every project has typically partitions:

Branches vs. Partitions

You will notice that branches do not match exactly partitions. Specifically, the dev and feature/XXXX-XXXX branches share the same partition for testing purposes.

This is because it is not practical (and sometimes not even possible) to have one partition for each feature branch. One reason for not having one to one relation can be the size of data you might need to replicate for each partition.

The development team should establish some rules regarding the dev partition. Thought should be given to how the team will share the dev partition, while testing different feature configurations, while not overriding somebody else’s configuration.

Pricefx "GitFlow"

When working in Git, a common flow should be used. GitFlow was considered but since there are some specifics to the Pricefx development, we adopted GitFlow with a few changes. The main reason for these differences is that the configuration can only be tested against some partitions.

Differences to standard GitFlow:

To learn more: