What is the best way to work on the same project from over a distance?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By TheWolfWizard64

I am new to game development and want to work on a project with a friend. I’ve been looking into this for a while but I cant find any helpful leads. it might just be because I don’t know what I’m doing but it is all a part of our journey. It would be preferable if there was something that allowed us to see each others work and make edits in real time. I don’t know if such a thing exist, but if it does we would like to know so that working would be easier.

:bust_in_silhouette: Reply From: Zylann

There is no such thing as a Google Docs for game development environments.
Some people use Dropbox or Google Drive for simple projects (it just synchronizes files), but I wouldn’t recommend it on the long run.

Version control systems are fit for that job. These tools don’t make you see each other work automatically and instantly, but it allows you to synchronize when you actually want it, rollback changes you might want to undo, navigate history so you can remember who did a thing and why, and resolve eventual conflicts that might occur if you end up modifying the same file.

Such version control systems include:

  • Git, with Github for hosting the project online
  • Mercurial
  • SVN
  • Perforce
  • And more…

These are used very widely in the industry. Some can be used locally without a server (it’s still useful even if you are alone on the project).
Git is the one used for contributors from all around the world to develop the Godot Engine.
It can take a few days to get started with it and weeks to get some experience, but it’s really worth it.

As for project organization, this might help Project organization — Godot Engine (3.1) documentation in English

Or this: https://twitter.com/the_duriel/status/1135615070719922177