Git essentials: start controlling the Git version-Devops

Git essentials: start controlling the Git version-Devops

Discover how Git manages the versions and how to install the necessary software to access Git servers where your software program will be stored

Concepts of version control

To understand Git and the concept of controlling variations, it's useful to look at the control of versions from a historical point of view. There are three generations of software for version control.

First generation

The first generation was very simple. Developers worked on the same physical system and "checked" one file at the same time.This generation of software version control software used a technique called file locking. Once the developer checked the file, it was blocked, so no other developer was able to edit the file. Figure 1 shows the concept of this type of upgrade.
Figure 1 : first-generation control software
Figure 1 : first-generation control software
Examples of first-generation control software include the Audit Monitoring System (RCS) and the Source Code Control System (SCCS).

Second generation

First-generation problems include the following:
  • Only one developer can work on one file at the same time. This results in a bottleneck in the development process.
  • Developers must log in directly to a system that contains software for version control.
  • These issues have been solved in the second generation version control software. 
In the second generation, the files are stored on a centralized server in the repository. Developers can check separate copies of the file. Once the developer finishes work in the file, the file is registered in the repository. Figure 2 shows the concept of this kind of version control.
Figure 2 Second  version of the software
Figure 2 Second  version of the software
Examples of another version of the software for version control include the system of concurrent versions (CVS) and Subversion.

Third generation

The third generation is known as distributed distribution system (DVCS). As with the second generation, the central storage server contains all the files in the project. However, developers do not review individual storage files. Instead, it checks the whole project, which allows the developer to work on the entire set of files, rather than just individual files. Figure 3 shows the concept of this type of version control.In phase 1 in Figure 4, two developers examine a file based on the third version. In stage 2, the developer checks this file, resulting in version 4 of the file.

Figure 3 Third Version  of the software
Figure 3 Third Version  of the software
In the third stage, the other developer must first combine the changes from his verified copy with the variations in Version 4 (and, possibly, the other version). Once the merger is complete, the new version can be sent to the repository as version 5.Phases 1 and 2 are the same as those shown in Figure 4. However, note that the second phase of registration in phase 3 causes a Version 5 file that is not based on Version 4 is independent of Version 4. In step 4 of the procedure, versions 4 and 5 were combined to create version 6.Although this process is more complex (and, potentially, much more complicated if it has a large number of developers), it offers some advantages in one single line of development:
  • Developers can make regular changes to their changes and must not worry about merging until later.
  • The aggregation process could be passed on to a particular developer who has a better idea of ​​the project or complete code than other developers.
  • The administrator can always return to the project and see exactly what the work was done by a developer.

Of course there is an argument for both methods. However, remember that this article focuses on Git, which uses the method with an acyclic-targeted graph of three variants of version control systems.

Installation Git

You can already have a Git in the system, because it is sometimes installed by default (or it may have been installed by another administrator). If you have access to the system as a regular user, you can run the following command to find out if you have Git installed:

ocs @ ubuntu: ~ $ to git
/ usr / bin / git

If Git is installed, the path to the git command is provided, as shown in the previous command. If it is not installed, then you do not get an exit or an error, such as the following:

Concepts and functions Git

One of the challenges in using Git is to simply understand the concepts behind it. If you do not understand the concepts, then all the commands look just like black magic. This section focuses on the end.


Comments

Popular posts from this blog

Introduction to Ansible - DevOps in 2018

Important Topic of Terminology in DevOps

6 Compelling Business Benefits of DevOps In 2018