Manage Projects with GitLab

We will add a sample project to our GitLab repository so we can see some of the features available when a project has a history and many commits.


Go through the procedure to create a new project. Call it "Rails". This time, click "Import existing repository" link. We will be using Michael Hartl's Ruby on Rails tutorial sample application.


In the Import existing repo field, type:


https://github.com/mhartl/sample_app.git


Click "Create project".

View Project Code

You should be taken to the project's landing page. Click on the "Files" tab to see the actual repository files:

Repo files.png

Click on the "Gemfile" file. As you can see, there is great syntax highlighting included for recognized languages:

Gemfile.png


If your project has multiple branches, you can change the branch view by clicking on the master drop-down and switch to a different branch:

Switch branch.png


Review Commits

Click on the "Commits" tab to see the list of commits for the current branch:

Commit history.png


You can click on any commit to see the diff that was produced by the commit. If you would like to see the entire project at any commit point, click the "Browse Code" link associated with that commit:

Code view.png


To see the diff between two commits, you can click the "compare" tab at the top. If we type the name of one of the commits in the left-hand box (in this case, we'll use e3c055dff), we can get a complete diff between the two:

Commit diff.png


Graphic Representations of your Project

You can view your project graphically in two different ways.

First, if you click on the "Network" tab, you can see a commit tree of your project. This allows you to see branches, merges, and commits. It will use the user's picture next to each commit as well, for easy identification:

Commit tree.png


The other way to get a graphical picture of your project is with the "Graphs" tab. You will see a large graph with the number of the project's commits vs time displayed. Below it will be a matching graph for each contributor:

Commit graph.png


You can select a portion of the project graph and the user's graphs will adjust accordingly. You can also choose to display additions or deletions instead of commits through the drop-down menu.


Conclusion


There are other tools included within GitLab that you should check out if you plan on using it with a team. This includes an embedded wiki for each project, an issue tracking system, and merge requests. For sharing small pieces of code outside of any specific project, GitLab also has snippet support.

For most teams, a properly configured GitLab will be more than adequate to handle projects. It provides simple user control and easy project creation and sharing. Explore the interface to see if it could be an easy solution for your project.