Version Control


#1

We’re extremely happy to announce that we’ve rolled out our integrated version control to all PlayCanvas users. With this new feature everyone now is able to create checkpoints and branches in their projects, merge between branches and view the changes you have made since your last checkpoint.

Access the version control dialog via VC button in your viewport.

vc-button

We’ve been testing the feature extensively internally and we’re sure that it’s going to be a big productivity booster for your team.

Read more about the feature in our user manual.


Is Legacy option gone?
[SOLVED] Is there any way to use version control with current playcanvas?
[SOLVED] Without version control, is there anyway to "revert" if things messed up?
Any version control?
#2

This is very useful ,thanks.


#3

Incredible! Thanks guys :smiley:


#4

amazing!!
have been waiting for this. Just in time for new devs joining my team

thanks playcanvas team

One concern is the size of the checkpoints, this will affect the overall remaining disk space per account, right?
I think moving my heavy assets out of the project will help with this long term.


#5

Hi,

Yes, checkpoints and branches take up additional space. In particular each open branch consumes the same space amount of space as a current copy of your project. Closing a branch frees up this space.

Checkpoints size is dependent on what has changed, if you modify large assets your checkpoints will be large.


#6

Ah, good to see this engine is still developing. Gonna get back on soon.


#7

Really cool feature, but I have a question:

We have a tool in-house that allow us to use source control with PlayCanvas REST API command that export projects (with the Organization feature). Can we download the content of a specific checkpoint (for instance, it returns an exported project) with a command from the Rest API as well? We would like to download checkpoints so we can use both at the same time.


#8

Good question. The REST API lets you specify the branch from which to download, in which case you will receive the latest version in that branch.

We don’t have a way to support downloading any arbitrary version of a file. In the language of other source control systems we only give you access the HEAD of a branch.

In order to synchronize use of an external SCM, once solution is to work the other way around. Edit your files locally so that you can commit them to git (for example), then continually push the changed files to PlayCanvas. If you map a playcanvas branch to git branch you can do this without interfering with other developers.


#9

Thank you for your answer, make sense now