Program that will boost your productivity (Meet Git #1)

Use Git to back up your important stuff (and much more)

Krystian Szpiczakowski
5 min readSep 22, 2022
Photo by Mailchimp on Unsplash

Hello and welcome to the new article on my blog. Today, as usual, we’ll be looking at the topic related to IT, and the guest of today’s episode is a well-known version control system, Git.

Today’s episode will be a bit different, though. I’m going to go a little beyond computer science and programming, and demonstrate how using Git can help people outside the software development world.

I found out myself that some of the file management issues in non-IT projects can have a lot in common with problems that arise while writing the source code.

Take control of your backups

Do you recall a situation when you were working on some important document or project, and you periodically backed it up? At one point, your directory might have looked something like this:

Managing project files without Git can be a daunting challenge

Of course, this approach may be enough for very simple cases, but if you keep creating more copies this way, you can get lost eventually, and mistakenly use, or delete a wrong file.

What if I told you that developers have been using a free tool for solving these and other problems for years?

What is Git?

If you’re a developer, there’s a high chance you are pretty much familiar with Git, or at least you have heard of it.

If you do not come from the IT industry, this tool may be completely unknown to you, however. Even though, don’t you worry! This tool is quite straightforward to use for basic use cases, what you’ll learn from this and next articles.

Let’s check the definition found on the Git official website¹:

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Version Control System? VCS? WTF?

The idea behind this sophisticated term is not that difficult, as it might seem at a glance.

In a nutshell:

  • Git lets you turn any folder into some kind of container (so-called Git repository) that can safely back up data inside this folder and its subdirectories
  • Your data can be stored locally (on your computer), and remotely (somewhere on a server), where the remote repository is optional
  • Any changes made within your repository, like adding/changing/deleting files, can be tracked by Git
  • By tracking, I mean Git recognizes when the contents of your directory changes, so that you can for instance tell Git to remember (commit) these changes
  • Every commit is a separate version of the repository, or in other words, those commits represents how your files change in time
  • Git allows you to compare commits with each other, so that you can, for example, check how you progressed with your project
  • If you want, you can go back and restore your files from any commit you’ve created

What is Git typically used for?

Git has been in use since 2005, and it’s the most widely used version control system in IT projects. As an example, development teams (and not only) can do with Git the following:

  • Back up source code
  • Collaborate on code with others
  • Travel in time :)
  • Track project progress as Git holds the entire history of how the code was changing
  • Restore project files from Git history if needed
  • Automating IT infrastructure (GitOps)

What else can Git be used for?

As it turns out, non-IT people can experience similar problems, and in my opinion Git can be a lifesaver — see the examples below:

  • You’re writing a document in MS Word or LibreOffice, and you’d like to have a series of backups of your progress, not limited only to the last time when you clicked “Save” button
  • You might want to keep subsequent versions of your document in one place, and not have a mess with dozens of copied copies of copies of the original file
  • Your program has unexpectedly saved your project (welcome, autosave feature), and you can’t easily bring the project to the desired state. With Git, you can restore your project easily
  • If you ran out of undo operation (Ctrl+Z), and you want to bring your project back, you can restore project files from Git history
  • You might also want to store your backup somewhere else
  • You would like to share your project with someone else, either only to view it, or also to collaborate

Get the best of Git and use it for your needs

As you can see, Git can bring much value, but it has also some limitations, which you should know about.

One of the most important things, is Git has been primarily designed to work with text files, as this was a tool designed mainly for developers. It’s because source code is just a plain text, and indeed, working with text files is something that Git excels at.

Of course, Git can also operate on binary files, i.e. graphics, images and other files that don’t have a textual representation, for example GIMP projects (these are files with .xcf extension). However, it comes with certain limitations, that will (or will not) affect your workflow.

How do I personally use Git?

I found out that Git helps me when I create graphics in GIMP, or when I edit videos using HitFilm. Backing up my projects is something really useful, especially while project’s complexity grows.

Although both programs use project files that are not text files (.xcf for GIMP, .hfp for HitFilm), I still find Git helpful for these uses. Okay, .hfp projects are text files, but their structure makes they are not meant to be read by humans.

What’s next?

For sure, Git is a powerful tool that is worth getting to know. If you are still curious, stay tuned as I’m going to show you in this series step-by-step how to use Git.

In the next article, I’m going to show you how to install Git, and start using it like a Pro.

References

[1] Git official website, https://git-scm.com/

--

--