Version control systems allow you to keep track of your software at the source level. You can track changes, revert to previous stages, and branch off from the base code to create alternative versions of files and directories.
One of the most popular version control systems is
git
.
Many projects maintain their files in a Git repository, and sites like
GitHub and Bitbucket have made sharing and contributing to code with Git
easier than ever.In this guide, we will demonstrate how to install Git on a CentOS 7 server.
1) Install git.
[shabbir@compute1 ~]$ sudo yum install git
2) Configure your name and email.
[shabbir@compute1 ~]$ git config --global user.name "shabbir rangwala"
[shabbir@compute1 ~]$ git config --global user.email "shabbir.ahr@gmail.com"
[shabbir@compute1 ~]$ git config --list
user.name=shabbir rangwala
user.email=shabbir.ahr@gmail.com
3) Create your workspace. Create a dir. 'git' in the home directory and subfolders for each of our individual projects.
[shabbir@compute1 ~]$ mkdir -p ~/git/perl
[shabbir@compute1 ~]$ cd ~/git/perl
4) Copy all project files to the dir. Here we create a test file to use in our repository.
[shabbir@compute1 perl]$ touch test_file.pl
5) Tell git that you want to use your current directory as a git environment.
[shabbir@compute1 perl]$ git init
Initialized empty Git repository in /home/shabbir/git/perl/.git/
6) Add all files and directories to your newly created repository.
[shabbir@compute1 perl]$ git add .
7) Every time you add or make changes to files, you need to write a commit message. Commit messages explain what your change did.
[shabbir@compute1 perl]$ git commit -m "Initial Commit" -a
the -a signifies that we want our commit message to be applied to all added or modified files. This is okay for the first commit, but generally you should specify the individual files or directories that we want to commit.
To commit an individual file.
[shabbir@compute1 perl]$ git commit -m "Initial Commit" test_file.pl
To add additional files or directories, you just add a space separated list to the end of that command.
8) Create an account on github.com and create a repository 'perl'
9) Configure the remote repository. The name is 'origin' and the URL is 'https://github.com/RShabbir53/perl.git'.
[shabbir@compute1 perl]$ git remote add origin https://github.com/RShabbir53/perl.git
[shabbir@compute1 perl]$ git remote -v
origin https://github.com/RShabbir53/perl.git (fetch)
origin https://github.com/RShabbir53/perl.git (push)
10) Push code to the remote server. "git push" tells git that we want to push our changes, "origin" is the name of our newly-configured remote server and "master" is the name of the first branch.
In the future, when you have commits that you want to push to the server, you can simply type "git push".
[shabbir@compute1 perl]$ git push -u origin master
11) In the future, when you have commits that you want to push to the server, you can simply type "git push".