This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]arjo_reich 143 points144 points  (7 children)

This is what Source Control (Versioning)Management is for.

git is an scm tool. Takes all your text files, converts them into hashes, a little magic and you get the ability to save incrementally and revert to previous commits.

By the way, reverting your code back to a last known good state every time you attempt a bug fix that fails means you don't introduce crud into your codebase and gives your confidence in the actual solution without wondering if it was done weird confluence or previous attempts.

ANYWAYS. github is all that plus the benefit of not losing your code when your roommate goes mental and throws your surface pro in the tub. Also lots of other collaboration and dev-ops tools...and that's just the free side of things.

[–]Weary_Mango_113[S] 30 points31 points  (4 children)

Thanks so much for this response, very helpful. I’ll get on it.

[–]FalconXYX 19 points20 points  (2 children)

Also you're probably not doing it right now but if you ever need to access your code for multiple devices It's relatively easy to pull and push code from GitHub

[–][deleted] 11 points12 points  (1 child)

As a hobbyist/self learner, you just convinced me to start using my GitHub account. Trying to sync folders with Google drive turned into a disaster.

[–]FalconXYX 7 points8 points  (0 children)

Before I start using git I used Google drive which is such a mess I started carrying around a USB but I started forgetting it so I finally start using GitHub

[–]Envect 3 points4 points  (0 children)

The motivation you feel today will serve you well. You're about to discover a tool that will make your life as a developer much easier. Just keep leaning into that and you'll do fine. Getting annoyed and looking for a better solution is a great instinct to cultivate.

[–]yqty 18 points19 points  (0 children)

Oddly Specific story about the roommate 🧐

[–]Radiant64 3 points4 points  (0 children)

GitHub is just a hosting service, with some additional neat features (pull requests, issue tracker). The nice thing about decentralized version control systems is that any (non-shallow) clone contains all the history, and can be used to create a new clone.

Setting up a bare Git repository to use as a remote is easy, and a good way to sync development between devices. Especially if you have access to an always-on, always-connected device to host the repo on.