Git helps you synchronize and track changes to a folder with its subfolders. A website is basically a folder on a server somewhere. In the folder are subfolders, images, text documents, databases and such. Git makes it possible to synchronize the content of the folders, take a portion out to fiddle with, and then merge it back.
In a way, it does what Dropbox or Box.com do: it tracks changes, notes who changes what, can revert changes if needed (“undo”) and highlights discrepancies or conflicts if something was updated in several locations at once.
Me.
Usually developers sync two folders, when they’re the only ones working on a project:
- the server folder far away on the provider’s network,
- and their own local server folder on their computer or desktop. This is a “local server folder”, to mimic the work a server does for the website, but on your computer.
Sometimes, they sync three folders:
- the server folder far away, active and hosting the side for the public – this is called the “production” server
- a secondary folder, usually on the provider’s network, used for “staging” or “pre-production”,
- and, again, their own local folder on their computer or desktop.
If more than one developer are working on the same project, then each of them can synchronize and track changes on their local computer, but they always refer to the main project folder. At this point, I’m not sure whether they can sync files among their local computers without syncing them to the main “repository” first.
Is Git a software?
Git in itself is a protocol, a standard in the way changes are documented and traced. To apply or use this protocol, you can choose from among different software and platforms.
To use commands and actually use the protocol, you can use either Git Bash (Unix/Linux) or Git CMD (Windows). Regularly update Git Bash with this command:
git update-git-for-windows
A different tool helps you manage the repositories and see what’s in them. For example, Github is a platform that helps you manage git repositories. It works from either their website platform or from Github desktop, a software that you install on your computer.
Aside from Github, there’s also Gitkraken, Bitbucket, Gitlab, and others, too.