Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Source code version control and git
1.
2. What is version control system ?
History of version control system
Local version control system.
Centralized version control system
Distributed version control system.
A short history of ‘Git’.
‘Git’ installation and some basics.
Submitted to :Mr. shakirullah 'waseeb' 26/3/2018
3. Version control system is a system that records changes to a file or set of files
over time over time so that you can call specific versions latter .
If you are a graphic or web designer and want to keep every version of an
image or layout , a version control system is a very wise thing to use to do the
following
1- to revert your selected file or files to a previous version.
2- allows you to revert entire project to a specific previous version.
3- compare changes over time.
4- see who made changes in your project.
Submitted to :Mr. shakirullah 'waseeb' 36/3/2018
4. Continue…
Or a version control system is a piece of software that helps a team of
developers to work on one single software and archive a complete history of
there work. For the following reasons :
we want programmers to work simultaneously not serially
When programmers work together we want there work to not conflict
each other that the VCS solves this problem easily.
We want to archive every version of something that has ever exited with
the information that who did it why and when did it.
Submitted to :Mr. shakirullah 'waseeb' 46/3/2018
5. History of version control system:
Version control systems can be divided into three generations:
First : in the first generation tools concurrent development was handled only by looks
only one person could be working on a file at the same time. Tools examples: RCS, SCCS.
Second : the second generation tools are a little bit more permissive than the first
generation but with a less restrictions such that the developer must marge the file before to
commit. Tools examples are : CVS, SourceSafe, sub version ….
Third : this generation allowed marge and commit to be separated. Tools examples are
: git ...
Submitted to :Mr. shakirullah 'waseeb' 56/3/2018
6. Local version control system:
Many peoples’ version control method is to copy into another directory (to
time stamped directory if the programmer is a clever ).
For the reason that this is a very simple approach that is why it is also very
common.
The problem is this that if we forget the directory or write into a wrong file
over file we don’t mean.
To deal with this problems programmers long ago developed a Local VCS the
had a database that kept all the changes made through the file. An example of
local VSCs is : RCS.
Submitted to :Mr. shakirullah 'waseeb' 66/3/2018
8. Centralized Version control system:
The other important issue is that a group of programmers should work as a
group on the same software . To solve this problem centralized version
control system was use. The versions such as subversion and purpose.
In this system we have a server and a number of the clients . For many years
this version was the standard for the version control .
The main problem with this approach is that if the server goes down no one
can save the new version of there codes to the server.
Whenever your data is just in one place there is the high risk of losing the
data if the server dies.
Submitted to :Mr. shakirullah 'waseeb' 86/3/2018
10. Distributed version control system:
In DVCS such as Git ,Bazaar or Darcs clients not only check the
latest snapshot of the files and they can fully mirror the
repository including its full history.
thus if the server dies every client’s data can be backed up to the
server.
It allows you to set up deferent types of workflows that isn’t
possible in centralized database system.
Submitted to :Mr. shakirullah 'waseeb' 106/3/2018
12. Short history of ‘GIT’:
Futilisoft began work on a new product calculated the probability (as an
integer percentage ) of winning the power ball for any given set of numbers.
The company has assigned two developers to work on the same project.
Harray located in Birmingham ,England. And Sally located in Alamba and
worked together share to the one server in Cleveland .
They decided to develop this product as a command line product in C and
they used Git 1.7.5 for it.
Submitted to :Mr. shakirullah 'waseeb' 126/3/2018