Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
Unity's version control component has been upgraded to Plastic SCM.

Collaborate isn't ready to be a paid service

Discussion in 'Unity Collaborate' started by SpaceShaman, Mar 19, 2018.

  1. SpaceShaman

    SpaceShaman

    Joined:
    Sep 29, 2016
    Posts:
    6
    Hey guys.
    This is an opinion post.

    I've been using Collab on 2 projects now, by request of a company I've been working with.
    One project, on unity 2017.2, involved about 5 users and lasted several weeks, the other, on unity 2017.3, involved around 20 users and went on for a couple of months.

    At this point, I feel strongly that taking money for this tool is not OK.

    I apologize in advance for going to focus solely on Collaborate's problems here. It is not to say the tool isn't good on some fronts (usability, editor integration, affordance, etc.), and I do think that a robust and functional Collaborate would be invaluable. But after the problems we've faced using it I gotta put this out there. I speak here for myself & my team. The other teams we have been working with have been expressing the same dissatisfactions.


    1) Collaborate features don't work well

    There are many bugs, some result in significant loss of time and work. I estimate a few tens of work hours lost in the second project due to collab issues - not to mention the confusion, frustration and breaking of flow that resulted.

    The bugs were many and varied (some resulting in having to re-clone the entire project), but some were recurring issues. These following issues happened over and over again, multiple times every day for every single person working on the project:

    - Publishing/Updating errors - loading bar stuck at 99% and requires a repull or cancel (this happens most times when updating). Clicking Update does nothing despite updates being shown to exist, and needs to be repeatedly attempted until it catches. Publishing sends back an error message and requires multiple attempts, etc. We seldom Publish or Update without some problem.
    - Connection issues - besides a collective 3-4 hours of total downtime, we've had multiple issues with pull/push times, server connection failures requiring restarting or re-logging into unity accounts, etc. This is poorly communicated by collab, sometimes opening the window simply shows nothing.
    - Failing to identify or show conflicts - this is the big one. We've accidentally rolled over each other's work so many times, with Collab simply failing to identify and alert of a conflict and simply erasing work. This is compounded by lack of certain features which I will mention below.

    So the first point is, what you do get doesn't work well.
    The second point is:


    2) Collaborate is feature incomplete

    I know and understand this is meant to be a simple tool. Still, some very basic features are missing. Here's a short list of simple features we ached for and felt are more than warranted for such a tool:

    - Revert specific files to specific versions - currently, if we want to roll back a specific file, you have to roll back the entire project, save the file aside, update back to current and copy the file back. This is especially annoying when files get rolled over by collab's failure to recognize a conflict and the inability to see a file's history.
    - See and discard local changes without pulling - in order to see or do any actions on local changes, you must be fully updated. In a project that includes lots of textures and other big files, and with updating usually not being a smooth experience, this is a real hindrance.
    - Limited selective publishing - you have two options; either publish all your local changes, or find the specific files you want to publish and publish them one by one. In other words, it's very difficult to keep some local changes and publish others while working.
    - Handle multiple files at a time - the collab window shows you up to 3 files at a time, and even then, you cannot handle more than one at a time. Want to revert changes to 12 files? Do it 12 times. Unless by luck they're all in the same folder, in which case you can do it through the project view. This isn't serious.
    - Limited history view - there is no way to see in Unity the actual changes done to files, let alone the fact that you can only see up to 10 files per publishing - even in the history tab. Clicking on "show all in dashboard" takes you to your dashboard's main page - now go looking for the project and the specific publishing you're interested in.


    I'm going to stop here. There is much more on our collective minds, but suffice it to say the entire team and myself have felt a lot of frustration with Collaborate over the past few months, as have the other teams we've been working with.

    I'd be interested in hearing other people's experience with Collaborate. Perhaps our expectations are not standard and/or the nearest servers are not well connected to our location. I don't know.

    [/rant]
     
    Last edited: Mar 30, 2018
  2. DerrickMoore

    DerrickMoore

    Joined:
    Feb 4, 2018
    Posts:
    246
    I tried to check out Unity Collaborate.. and nothing loaded from the page but ...
    {
    "message" : "IO Thread is not running.",
    "code" : "143.002"
    }

    so, I guess you are correct...

    I wanted to check it out because I just couldn't get over the "- Failing to identify or show conflicts " because that's basic revision control stuff.... or users just grabbing ALL the files (like, the files they are using, plus all the stuff they are not) and overwriting stuff willy-nilly...

    when I used revision control with a team, I would check out a file, modify it and check it back in.

    /but, like I said, I was going to check out Unity Collab, but it doesn't seem to work.
     
  3. LanirBs

    LanirBs

    Joined:
    Nov 20, 2014
    Posts:
    15
    Agree. the collab at this point is just not good enough.
     
    nswayze, RaL, SudoCat and 2 others like this.
  4. HaakonL

    HaakonL

    Joined:
    Mar 13, 2014
    Posts:
    123
    Well, the lack of response from Unity here says it all, doesn't it? We share the same frustration. I have just instructed a new employee how to deal with Collab: Save before pulling, always restart Unity after pulling, don't use the dropdown, it's probably not showing all commits since your last pull, always use the collab history window, don't save your scene after pulling before you have restarted unity, when the collab history tab acts up, close it, press the cloud button a few times, then reopen the cloud history.

    And not to forget how everyeone on the team must have Plus or Pro to avoid ProjectSettings from being overwritten. We hire a lot of contractors, most of them use Personal, and they constantly overwrite the ProjectSettings, leading to incorrect builds in Cloud Build. So on top of the list of things above to keep in mind, they also need to remember to revert ProjectSettings every time they have something to push. Adding it to .collabignore will make it impossible for the cloud build manager to publish settings changes.
     
    SpaceShaman likes this.
  5. dkstrong

    dkstrong

    Joined:
    Aug 17, 2013
    Posts:
    16
    I've also had issues with losing connection/having a connection problem causing issues. Though, Collab is easily one of my favorite features of unity, and it seems to work well 90% of the time.

    I hope unity continues to build upon it and sort out the bugs. Because it is very easy to set up and start using on any project, and it sorts out merge conflicts 10x better than git ever would.
     
  6. BadUncleGames

    BadUncleGames

    Joined:
    Aug 10, 2015
    Posts:
    39
    The original post summarises the majority of the main issues that we experience as well. Quite frustrating compared to full fledged SVN systems. I do understand this isn't meant to be a full fledged solution and the convenience of being integrated to the editor is excellent, but I am seriously considering going back to a normal GIT or even SVN option just for the added stability.
    Like the original poster we have lost many hours recloning or working with extremely slow updates (my ping time to the Sydney AWS instance is only 30ms).
     
  7. johng_unity

    johng_unity

    Unity Technologies

    Joined:
    Nov 5, 2015
    Posts:
    158
    Thanks for the valuable feedback @SpaceShaman and others.

    With regard to the features that do not work well (publishing/updating errors, connection issues, failing to identify or show conflicts) we are working on addressing those issues and apologize for the frustration and hours lost that they have caused.

    Specifically, here is an update on each of the items you called out:

    - Publishing/Updating errors - loading bar stuck at 99% and requires a re-pull or cancel (this happens most times when updating). Clicking Update does nothing despite updates being shown to exist, and needs to be repeatedly attempted until it catches. Publishing sends back an error message and requires multiple attempts, etc. We seldom Publish or Update without some problem.

    • Update:

      • We are currently investigating the issues with the collab toolbar getting stuck in various scenarios (loading bar sticking at 99%, etc.). We have already fixed some of these issues, but are investigating others that remain.
      • Also, unfortunately, we had an outage last week that resulted in this problem occurring more often (https://forum.unity.com/threads/update-to-eu-service-outage-on-3-21.522982/). That service issue has been fixed.
      • If you are seeing specific failures (specific error messages, etc.), please report these to collabsupport@unity3d.com or file bugs. It’s very helpful!
    - Connection issues - besides a collective 3-4 hours of total downtime, we've had multiple issues with pull/push times, server connection failures requiring restarting or re-logging into unity accounts, etc. This is poorly communicated by collab, sometimes opening the window simply shows nothing.
    • Update:

      • We are investigating these issues actively. There are some improvements that have already been made and will ship with 2018.1 (or in 2018.1 patch 1).
      • Until we have tracked down all the issues and fixed them, opening the services window (windows -> services) or refreshing it (right click services tab -> reload) will sometimes fix a blank toolbar.
    - Failing to identify or show conflicts - this is the big one. We've accidentally rolled over each other's work so many times, with Collab simply failing to identify and alert of a conflict and simply erasing work. This is compounded by lack of certain features which I will mention below.
    • Update:

      • We have fixed a number of bugs with Collaborate's merge flow over the past few months which could cause some of the problems you describe. Many of these fixes are only in the latest 2017.3 and 2018.1 patches or will be released in the next patch. We have put a lot of effort over the last few months into improving the performance and accuracy of the merge process.

      • In general, there are some important things to know about Collab's merge system that may help you:

        • Collab tries to auto-merge changes that it understands (for example, if you merge Scene A and you have moved object X and your teammate has moved object Y, those are considered non-conflicting changes and will be automatically merged).

        • If all changes can be auto-merged successfully, no conflict is shown in the editor, but a warning message is shown in the console.

        • If changes to a file cannot be auto-merged, the file is marked as a conflict for you to resolve manually (choose mine, choose theirs, diff, use external merge tool)

          • By default, we only allow you to choose between your raw file and the raw file downloaded from the repository. If you wish to manually choose between (or manually merge) pre-merged files, which auto-merge as much as possible, you can find those files in \Library\Collab\Merge\Assets\ when a conflict is shown. *.absoluteLocalPath = automerged file + your changes; *.tmpOutputPath = automerged file + remote changes. Hand-editing unity files (like .assets) can be dangerous (you can break things), so do this at your own risk.
        • Collab saves a backup of files to be merged (only the latest version) before the auto-merge is processed. You can find those backups under /Library/Collab/Original/Assets/ if you have a bad merge and want to restore the original file.

    We are committed to fixing Collaborate bugs and making the Collaborate experience as seamless as possible.

    The most stable versions of collab (with the most bug fixes) will be the 2017.3 latest patch releases, the upcoming 2017.4 LTS release, and the upcoming 2018.1 release (and patch releases). Older versions will have fewer fixes, especially if you are not using the latest patched version.

    Also, parts of Collaborate will start being distributed as a package sometime in 2018, so that you'll be able to get the latest collab bug-fixes without having to update your Unity version (once you have a version that supports packages).

    With regard to some of missing features you pointed out, here are a few notes that may be useful:

    - Revert specific files to specific versions - currently, if we want to roll back a specific file, you have to roll back the entire project, save the file aside, update back to current and copy the file back. This is especially annoying when files get rolled over by collab's failure to recognize a conflict and the inability to see a file's history.
    • Response:

      • The web dashboard's Collaborate -> Assets page can show you a detailed history of changes for each file, and allows you to download any version still in your file history (length of history depends on your Unity Teams plan). There is currently not an option to do this directly from within the editor, but it is being considered.
    - See and discard local changes without pulling - in order to see or do any actions on local changes, you must be fully updated. In a project that includes lots of textures and other big files, and with updating usually not being a smooth experience, this is a real hindrance.
    • Response:

      • When you are in the "Update" state (project updates available), you can still use a combination of the project browser and the collab history window to do all collab actions (other than publish). You just need to right-click the files/folders in the browser and use the Collaborate menu instead of using the toolbar.

      • The toolbar design may change in the future and might address usability during updates. If you can think of better ways to handle this, please leave more feedback!
    - Limited selective publishing - you have two options; either publish all your local changes, or find the specific files you want to publish and publish them one by one. In other words, it's very difficult to keep some local changes and publish others while working.
    • Response:

      • If you wish to publish changes to multiple specific files at once, there are many options:

        • If you are using the 2-pane project view:

          • If the files are all in the same folder in your hierarchy, you can multi-select them and publish them with the right-click menu

          • If you click on the "All Modified" favorite search filter, you will get a flat list of all files you currently have modified / added to the project compared to when you last synced to collab. You can then multi-select any of these files you want and publish them using the right-click menu.

          • If all the changes you wish to publish are inside a specific folder, you can right-click on the folder and select "Collaborate -> Publish" and only the changed/added files in that folder will appear in the publish window
        • If you are using the 1-pane project view:

          • You should be able to multi-select all files (and/or folders) you want and publish them with the right-click menu.
      • If you can think of additional improvements you’d like to see, please let us know.
    - Handle multiple files at a time - the collab window shows you up to 3 files at a time, and even then, you cannot handle more than one at a time. Want to revert changes to 12 files? Do it 12 times. Unless by luck they're all in the same folder, in which case you can do it through the project view. This isn't serious.
    • Response:

      • If you wish to revert changes to multiple files, there are many options:

        • If you are using the 2-pane project view:

          • If the files are all in the same folder in your hierarchy, you can multi-select them and revert them with the right-click menu

          • If you click on the "All Modified" favorite search filter, you will get a flat list of all files you current have modified / added to the project compared to when you last synced to collab. You can then multi-select any of these files you want and revert them using the right-click menu.

          • If all the changes you wish to revert are inside a specific folder, you can right-click on the folder and select "Collaborate -> Revert".
        • If you are using the 1-pane project view:

          • You should be able to multi-select all files (and/or folders) you want and revert them with the right-click menu.
      • If you can think of additional improvements you’d like to see, please let us know.
    - Limited history view - there is no way to see in Unity the actual changes done to files, let alone the fact that you can only see up to 10 files per publishing - even in the history tab. Clicking on "show all in dashboard" takes you to your dashboard's main page - now go looking for the project and the specific publishing you're interested in.
    • Response:

      • The "Show all on dashboard" link taking you to the project list was a bug, and is currently fixed for 2018.1.

      • In 2018.1, clicking on the "Show all on dashboard" link should take you directly to the Timeline (check-in history) page of your project. We are currently working on a feature to take you to the exact check-in selected and that should be released in a future dashboard update.

      • We are considering what to do for collab UX/UI in the future, and improving the history window and providing better functionality around large commits is something we have thought about a lot. Please continue providing feedback!
     
  8. SpaceShaman

    SpaceShaman

    Joined:
    Sep 29, 2016
    Posts:
    6
    Thanks for the detailed response, John.

    My only further feedback at this point would be that it seems like a lot of the functionality is spread out between the Project window, Collab window, History tab and web dashboard, and with little overlap. I think some of the problems we were having, mostly features we were looking for, were a result of this.
    Unifying functionality or at least allowing for most features to be accessed from the same place would be my biggest suggestion when it comes to usability.
     
    Magic-Thor and Ryan-Unity like this.
  9. DerDicke

    DerDicke

    Joined:
    Jun 30, 2015
    Posts:
    267
    Found this thread by searching for "Collab 90 seconds" and wanna give my two cents.
    We are a three man team on Untity 2021 using the free Teams version (1GB) and collab works pretty decent for us. Because of the size constrains we have to keep most artwork out of it, which is a minor problem thus far.

    Kind of a bummer are it's delays. Opening the project takes pretty exactly 90 seconds because this is the time collab needs to look for updates on the project.
    Sync takes pretty exactly the same times, doesn't matter if you download 3kB or 30 MB. It seems the 90 seconds delay is hardcoded somewhere.

    Anyone like to share their knowledge about this issue?