Tutorial

How To Install Git on Ubuntu 20.04

GitOpen Source
Not using Ubuntu 20.04?
Choose a different version or distribution.

Introduction

Version control systems like Git are essential to modern software development best practices. Versioning allows you to keep track of your software at the source level. You can track changes, revert to previous stages, and branch to create alternate versions of files and directories.

Many software projects’ files are maintained in Git repositories, and platforms like GitHub, GitLab, and Bitbucket help to facilitate software development project sharing and collaboration.

In this guide, we will go through how to install and configure Git on an Ubuntu 20.04 server. We will cover how to install the software two different ways: via the built-in package manager, and via source. Each of these approaches come with their own benefits depending on your specific needs.

Prerequisites

You will need an Ubuntu 20.04 server with a non-root superuser account.

To set this up, you can follow our Initial Server Setup Guide for Ubuntu 20.04.

With your server and user set up, you are ready to begin.

Installing Git with Default Packages

The option of installing with default packages is best if you want to get up and running quickly with Git, if you prefer a widely-used stable version, or if you are not looking for the newest available functionalities. If you are looking for the most recent release, you should jump to the section on installing from source.

Git is likely already installed in your Ubuntu 20.04 server. You can confirm this is the case on your server with the following command:

  • git --version

If you receive output similar to the following, then Git is already installed.

Output
git version 2.25.1

If this is the case for you, then you can move onto setting up Git, or you can read the next section on how to install from source if you need a more up-to-date version.

However, if you did not get output of a Git version number, you can install it with the Ubuntu default package manager APT.

First, use the apt package management tools to update your local package index.

  • sudo apt update

With the update complete, you can install Git:

  • sudo apt install git

You can confirm that you have installed Git correctly by running the following command and checking that you receive relevant output.

  • git --version
Output
git version 2.25.1

With Git successfully installed, you can now move on to the Setting Up Git section of this tutorial to complete your setup.

Installing Git from Source

If you’re looking for a more flexible method of installing Git, you may want to compile the software from source, which we will go over in this section. This takes longer and will not be maintained through your package manager, but it will allow you to download the latest release and will give you greater control over the options you include if you wish to make customizations.

Verify the version of Git currently installed on the server:

  • git --version

If Git is installed, you’ll receive output similar to the following:

Output
git version 2.25.1

Before you begin, you need to install the software that Git depends on. This is all available in the default repositories, so we can update our local package index and then install the relevant packages.

  • sudo apt update
  • sudo apt install libz-dev libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext cmake gcc

After you have installed the necessary dependencies, create a temporary directory and move into it. This is where we will download our Git tarball.

  • mkdir tmp
  • cd /tmp

From the Git project website, we can navigate to the tarball list available at https://mirrors.edge.kernel.org/pub/software/scm/git/ and download the version you would like. At the time of writing, the most recent version is 2.26.2, so we will download that for demonstration purposes. We’ll use curl and output the file we download to git.tar.gz.

  • curl -o git.tar.gz https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz

Unpack the compressed tarball file:

  • tar -zxf git.tar.gz

Next, move into the new Git directory:

  • cd git-*

Now, you can make the package and install it by typing these two commands:

  • make prefix=/usr/local all
  • sudo make prefix=/usr/local install

Now, replace the shell process so that the version of Git we just installed will be used:

  • exec bash

With this complete, you can be sure that your install was successful by checking the version.

  • git --version
Output
git version 2.26.2

With Git successfully installed, you can now complete your setup.

Setting Up Git

After you are satisfied with your Git version, you should configure Git so that the generated commit messages you make will contain your correct information and support you as you build your software project.

Configuration can be achieved by using the git config command. Specifically, we need to provide our name and email address because Git embeds this information into each commit we do. We can go ahead and add this information by typing:

  • git config --global user.name "Your Name"
  • git config --global user.email "youremail@domain.com"

We can display all of the configuration items that have been set by typing:

  • git config --list
Output
user.name=Your Name user.email=youremail@domain.com ...

The information you enter is stored in your Git configuration file, which you can optionally edit by hand with a text editor of your choice like this (we’ll use nano):

  • nano ~/.gitconfig
~/.gitconfig contents
[user]
  name = Your Name
  email = youremail@domain.com

Press CTRL and X, then Y then ENTER to exit the text editor.

There are many other options that you can set, but these are the two essential ones needed. If you skip this step, you’ll likely see warnings when you commit to Git. This makes more work for you because you will then have to revise the commits you have done with the corrected information.

Conclusion

You should now have Git installed and ready to use on your system.

To learn more about how to use Git, check out these articles and series:

Creative Commons License