Topic was automatically imported from the old Question2Answer platform.
Asked By
toivocat
So I want to somehow make a game at the same time as my uncle with Godot and sense he started using Godot before me I wanted him to help a little bit with the it. So what I want to know is if two people on different computers can work on the same project at the same time with auto update.
You can still make a better setup than passing archives around though.
To code with your uncle directly, you can share your screen to him, using Jitsi for instance. This might even be better than perfect project syncing, since he would also see what you are looking at when you ask a question. This also has the advantage that he can better see bugs you make, and focus on you instead of trying to program his own chunk at the same time. Image quality might be an issue though, as sending video is more demanding than text.
To sync up code between computers, you can use git. It effectively takes a folder and allows you to log changes inside it, push them to other computers and pull other’s changes. You probably want a free git repository hosting service (to push to and pull from the web), unless you or your uncle can easily set up a LAN. Also, if you had bad experiences with git in the past, there is more than one available interface.
PS: Welcome to Godot!
Edit:
git is a pretty feature full program, here are some basic commands, if you can/choose to use a terminal:
git init # create a new git repository (make sure to display “hidden files”). Your repository’s root is the folder containing the .git. Use git pull instead if the repository already exists on a server.
git add file file2 # Mark file and file2 as part of the next commit (update bundle). file can contain * as a wildcard, or even be just git add * for “everything”. You can call it multiple time.
git commit -m “My update, containing a change to the file that does the thing.” # Bundle up changes from files marked with git add, to send them or revert them later.
git push # Send all local changes to the server. You may need to use git pull beforehand, resolve conflicts, and then push.
git pull # Download and apply the changes from the server, also used when creating a local copy of a preexisting git on a server.
git log / git status # Display useful information.
git checkout file/commit_identifier # Revert files the folder to a given version, or reset the given file to how it was on the last commit.
Alternatively, you can look up a graphical program that does the same things, using buttons.
For the server, the best would be one you have control over. Failing that, there are sites like sourcehut.org, launchpad.net, gitlab.com, etc, which offer hosting, and often provide a graphical interface in addition to your local git-managing program.
There are alternatives to git, commonly referred to as DCVS (Distributed Concurrent Versions System), or just CVS. However, git is one of the older and most used, meaning that it should be very easy to find documentation and ask for help on it.
How do I use git though? And I’m not that new to godot already made a few games on toivocat.itch.io.