Using GIT in Linux

2 minutes read

Linux_logo_errorbits.com

How to use GIT in Linux

GIT is a revision control system that allows multiple contributors to work on same projects/files. Is also useful if you have more servers/vms/workstation that you manage and you want to deploy “recipes”/scripts/configurations on them. With GIT, you work locally, push the changes to the repository server and then get your files from any location you want. GIT tracks the changes made to the files and if a config is not working it can be reverted in no time.

To start learning GIT, I recommend  using GitLab, is free, very versatile and your repository will be in private mode. You can also try GitHub, free version is in public mode (!!! Do not store passwords or sensitive information in your files, if you use repositories that are in public mode !!!).

Preparing GIT environment:

Open Linux Terminal in ROOT mode:

sudo bash

Install GIT:

yum install git (CentOS)

apt-get install git (Ubuntu)

Install xclip (useful to copy file contents to clipboard):

yum install xclip (CentOS)

apt-get install xclip (Ubuntu)

Create and activate an account on GitLab

Add GIT username:

git config –global user.name “USERNAME”

git config –global user.name (verify your username)

Add GIT e-mail address:

git config –global user.email “your_email@domain.com”
git config –global user.email (verify e-mail address)
git config –global –list (verify username and e-mail)

Check if your system has a SSH Key so you can link it with your GitLab account:

 cat ~/.ssh/id_rsa.pub (if it’s displayed something starting with ssh-rsa, you don’t have to follow the next steps about key creation)

Creating SSH key:

ssh-keygen -t rsa -C “your_email@domain.com” -b 4096

Changing SSH key (optional):

ssh-keygen -p <keyname>

Copy key to clipboard with xclip:

xclip -sel clip < ~/.ssh/id_rsa.pub

Go to your Profile settings in GitLab -> SSH Keys and paste the contents of the clipboard.

Do a checkout on your master branch:

git checkout master

Download the latest changes:

git pull REMOTE NAME-OF-BRANCH -u

Create a new branch:

git checkout -b NAME-OF-BRANCH

Work on the branch:

git checkout NAME-OF-BRANCH

View the changes that you have made:

git status

Commit your changes:

git add file_name.extension

git commit -m “short description”

Send changes to your gitlab.com:

git push REMOTE NAME-OF-BRANCH

After you have made all the above changes, you can use short commands, git pull to get the latest updates and git push to upload the current modifications.

Facebook Twitter LinkedIn Telegram Whatsapp Pocket

Related Posts:

Git refspecs specifies the patterns for references on the remote side and the locally tracked branch. When you create a new repository and add a new remote to it i.e git remote add origin url
The Linux operating system has the highest rate of popularity for PCs. It is an open-source code that allows anybody to create their unique operating system. There are many benefits of using the Linux system, including that it is free and stable. Many corporat...
In terms of stability and security, Linux is ranked the most stable operating system and at the same time, it’s quite easy to maintain and support. One of the reasons why Linux web hosting has gained popularity is its easily accessible configuration files and ...
Ubuntu is an open-source operating system developed by the San microsystems. Linux allows users and in this case developers to make changes to the program without prior authorization from the creator. You can gather a deeper understanding of Ubuntu Linux from ...
A Linux operating system is quite different from a Windows operating system. They run off of different open-source operating systems such as Fedora and many more. Although they are not popular amongst regular users, many developers feel that a Linux laptop can...
Linux Fedora, often referred to simply as Fedora, is a popular open-source Linux-based operating system that is known for its focus on innovation, community-driven development, and cutting-edge features. Fedora is a free and open-source operating system that i...