6. Gitlab

6.1 Tool

Gitlab is an open-source lifecycle management software, that is also offered in an enterprise edition. The community edition of Gitlab (Gitlab CE) can be hosted on the own computer as well as users can use the cloud version for free. Lifecycle management means that the whole development process of a project can be managed, this includes these topics:

  • Work items can be created, assigned to users, commits, milestones.
  • Changes can be versioned.
  • Automated builds can be started (in the context of Blender let's think of render processes)

6.2 Registration of the cloud service

While the installation of Gitlab on the private computer is not a big deal to the new Omnibus installer scripts the use of the cloud has some advantages once other users shall participate in the project. On the homepage of Gitlab you can register for a free account.

With this free account you have all the possibilities that will be described in this tutorial.

6.3 Tasks, Repository and Rendering

First of all Gitlab helps to keep track of all the work that has to be done. In Gitlab these tasks are called "Issues". Issues can be handled via the Web UI.

Additionally Gitlab shall host all the repositories, i.e. the Blend files, the images and textures and so on. In this tutorial we use the command line tools, but to make it more comfortable I recommend to use a development IDE like Eclipse or Netbeans in the future. They are also free.

As last point we want to set up a CI/CD automation. We will do this on a computer or virtual machine.

Creation and initialization of the repo

Once you have been registered at Gitlab you can create a project: In your dashboard, click the green New project button or use the plus icon in the navigation bar. This opens the New project page. Change the Visibility Level of the project so that it is not public in case you want to keep it private. Select to initialize the repository with a README file, this creates a repository with a README file in it.

Next step is to clone the repo into a local directory. For this you need to know the URL to clone from. In the project list in Gitlab click on your project. You will find a button that shows the URL to clone from:

Clone the Gitlab repo

You will see two ways to clone, typically the https way works the best. Create a directory, and on the command line in this directory use this command to clone the repository (of course, replace the URL with your personal URL):

git clone https://gitlab.com/steveblender/blender.git

Alternatively you can create a project blender out of your local repository with this command:

git push --set-upstream https://www.gitlab.com/blender/blender.git master

We will use this directory for the CI/CD section.