Node Copied to Clipboard!

Portal Documentation - Projects


Syncing a Project

Once you have a project linked to an online version, you can sync the project. Syncing allows users to upload any changes they have made to the project on their local branch with the online version. If there are multiple users working on the same project, this allows collaboration, where each user can gain access to changes made by the other users.

What does syncing a project do?

Syncing a project does two things:

  • Download latest changes: The first step of the sync is to update your local project with changes made to the online version. Assuming this is successful, your project is updated with any changes made to the online project by other users.

  • Upload your changes: The second step of the sync is to upload your local changes to the online version of the project. This will allow other users to download your changes and have them applied to their local project versions.

Complications when Syncing a Project

Occaisionally when syncing projects, a merge conflict will occur. A merge conflict is when the same file or group of files has been modified by multiple users. The Portal will try its best to resolve merge conflicts without your help, but this will often fail.

An Example

In order to understand what leads to a merge conflict, and how to resolve it, we will consider a simple scenario. Lets say there is a project being shared between two people, John and Katie. When working together, John replaces a texture used in a lesson with an updated version. Unbeknownst to John, Katie has changed the texture as well, and has synced her new version to the online project.

In this case, When john attempts to sync, he will encounter a merge conflict. This was caused by the fact that the texture was updated by multiple people. In order to resolve the merge conflict, John and Katie must talk about the conflict and decide which version of the texture to accept, as only one can be used.

Once a decision has been reached, John will resolve the conflict through the portal by accepting either his texture ("Yours"), or Katie's ("Theirs").

More complex issues

Sometimes the interface provided by the Modest3D is too simple to easily resolve the conflict. If this is the case, it is recommended to manually use git to resolve the conflict in whatever way is best. For more information on this, read git's documentation, or contact the Modest3D team.