What is a Git (Linux speaking)?

511 views

What is a Git (Linux speaking)?

In: 23

11 Answers

Anonymous 0 Comments

Have you ever worked on a large complicated project? Especially with multiple people involved? After a while the project folder tends to look like this:

Financial Report.doc
Financial Report (1).doc
Financial Report (2).doc
Financial Report (3).doc
Financial Report (2)a.doc
Financial Report – Latest.doc
Financial Report – With Bobs changes.doc
Financial Report – Feedback.doc
Financial Report – Latest (1).doc
Financial Report (Final).doc
Financial Report (Revised).doc
Financial Report (Final) (1).doc

After a while, you might lose any sense of how these various versions of the document are related and what they’re all for. You might struggle to answer basic important questions like:

– Which is the latest version?
– Where are the unfinished changes was making?
– Who changed what when?
– Might there be some emails where the people who made changes made important comments about their changes?
– Which versions of the document are “works-in-progress” and which are considered “shipped products”?

A program that helps you manage these concerns is called a “version control system” (VCS for short). Basically a VCS is a program for organizing backup copies of old versions, branching (Bob circulated his changes for review but isn’t ready to put them into the main document), merging (okay Bob’s changes are ready to go in the main version now, but other people have changed the main version in the meantime), and so on.

“Git” is a version control system that is mainly used for computer code. Git was created in 2005 by the creator of Linux (Linus Torvalds), and within a few years it quickly displaced existing version control systems (CVS, Subversion) and other Git-inspired systems (Mercurial, Fossil) never gained the same traction.

Unlike many earlier systems, Git is a “Decentralized” version control, meaning each person has a complete copy of the project’s entire history. (This sounds wasteful, but computer code files are very small compared to modern hard drives and Internet connections, and Git has internal tricks like compression, and only saving the parts that changed.)

Many people use a website called Github to store their Git projects. Github also has features like an issue tracker. (Basically the issue tracker lets users and developers file tickets for specific bugs, features, etc.) But you don’t have to use Github to use Git for your own projects. Github is just a convenient place for finding other people’s projects that they want to be public.

You are viewing 1 out of 11 answers, click here to view all answers.