• Hey! Guest! The 36th GMC Jam will take place between February 27th, 12:00 UTC - March 2nd, 12:00 UTC. Why not join in! Click here to find out more!

Discussion Local Source Control


Today, I had my first "Whoops, I accidentally erased a good portion of my spritesheet" experience. Thankfully, this happened early on in my sprite creation, and got me to come across the concept of Source Control.

My question is how to set up a Source Control system local to my hard drive, without any online components.
(I did some searching online for tutorials on this, but they all seem to open with "Start a GitHub or BitBucket account.", and I don't want that).

I'm a solo dev, so I'm pretty much just looking to have an efficient backup/previous version catalog, that can save me a lot of hassle if I repeat the mistake I made today.

Also, with the local option, how would I go about generating an output of the changes made between two different versions of my game?

Thanks in advance for the advice.

Jack S

Install GIT - I personally use Tortoise GIT for the windows shell extensions. Their are several free and paid GUI interfaces for GIT to choose from. You are not limited to the built in GIT features of GMS (personally I find them lacking, hence using the external tools)


I also agree with setting up Git. Contrary to popular opinion, getting a GitHub or BitBucket account is strictly optional. You can always set up a repository on the spot within the directory you're working in, then set up a remote target later if you need a backup online or in an external drive.

While you can certainly set up something like TortoiseGit for managing your working copies, it's worthwhile to learn at least some basic manoeuvres in the command line. Here are a few starters that you will likely use right away:

To set up a local repository:
git init
git add .
git commit -m "Initial commit"
To check for changes since the last commit (summary of files):
git status
To check for changes since the last commit (line-by-line):
git diff
To commit your changes locally:
git add -A
git commit -m "COMMIT MESSAGE"
To view the history of changes in a GUI: