Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What exactly is source control?

So I'm using Visual Studio 2012, and whenever I create a new project I always leave out the "Add to source control" option, mainly because I don't what it is, what it's purpose is, or if it would be beneficial to me to use it.

I'm developing a rather large library on my own. I plan on making it open source. Is this what source control is for? Reading up online did not help me unfortunately, I'm still desperately confused. Is source control the same as version control too, by the way?

Some clarification would be greatly appreciated.

Thanks!

Alex

like image 444
Noah Roth Avatar asked Dec 03 '13 01:12

Noah Roth


People also ask

What is meant by source control?

Source control (or version control) is the practice of tracking and managing changes to code. Source control management (SCM) systems provide a running history of code development and help to resolve conflicts when merging contributions from multiple sources.

What is an example of source control?

This type of protection can include filtering facepiece respirators (FFRs), like N95 respirators. Source control protects others. Source control refers to the use of masks to cover a person's mouth and nose and to help reduce the spread of large respiratory droplets to others when the person talks, sneezes, or coughs.

Do I need source control?

Source control is important for maintaining a single source of truth for development teams. Using it helps facilitate collaboration and accelerates release velocity. Some benefits of source control are: It allows multiple developers to work on the same codebase.


3 Answers

Source control (otherwise known as revision control: http://en.wikipedia.org/wiki/Revision_control) is a way in which you can store and manage changes and revisions to your code-base.

Google: SVN, Git, Mercurial and Google Code, GitHub, Bitbucket.

I personally never start a propject (personal or otherwise without it). Also, I like BitBucket (www.Bitbucket.com) for managing my projects. It's free for a single user and they support Git and Mercurial.

like image 127
David J Barnes Avatar answered Oct 20 '22 21:10

David J Barnes


Quite simply, source control is a repository where your source code is stored. It's purpose is to provide a storage spot that is separate to the copy that you are currently working with, so you can make changes locally and then submit them back to your source control repository.

Think of it as being like a library - you can get code out, you can return (modified) code to it. It also gets more complex than that - you can use source control to handle multiple versions of the same source, and to merge changes from one copy to another. Additionally most (all) source control systems should provide a mechanism for tracing changes to code (i.e. audit tracking), and a means to "roll back" or revert to a previous version.

There are a variety of source control systems, some of which you install locally and some which you install centrally and access remotely. In all cases the underlying philosophies are mostly the same, although there are some differences around terminology and implementation of features. Source control is considered to be a system that is separate to your editor, your editor then provides a means to specify which source control provider to use and the location of the source control repository.

like image 3
slugster Avatar answered Oct 20 '22 22:10

slugster


I have found this

Git Source Control Provider is a plug-in that integrates git with Visual Studio

According to this, seems like source control = version control

like image 2
Scony Avatar answered Oct 20 '22 21:10

Scony