Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

Unity Collaborate Developer Diary #1: Exploring the New Design

Discussion in 'Unity Collaborate' started by StaceyH, Jul 1, 2019.

  1. StaceyH

    StaceyH

    Unity Technologies

    Joined:
    Apr 11, 2018
    Posts:
    44
    As we mentioned in our last blog post, The first steps to a new Collaborate, we are doing a series of “Developer Diary” posts to share what we’ve been working on for Collaborate as we work on it. The first post is now on the blog, and in it we explore the new UI in more depth, talk about command-line support and share some details on the current state of development.

    Check out our latest Developer Diary #1: Exploring the New Design and please use this thread to discuss the design and features that are important to you.
     
    Rafarel, IOU_RAY, UnityMaru and 2 others like this.
  2. JoathrentStudios

    JoathrentStudios

    Joined:
    Jan 27, 2018
    Posts:
    23
    Branching would be good, I like the simplified UI for those that are not comfortable with branching. Hopefully you can keep a simple "my work" and "team work" branching abstraction or something so that I don't have to teach artists how to branch and merge.
     
    naturebytes likes this.
  3. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    1,156
    The design seems to recreate many existing source control UIs out there but within Unity - which has good & bad points.

    The fact it is tied to your cloud storage solution makes it seem like it is mainly a way to charge for storage space however. If it was just a UI that could attach to any git/svn/perforce server as well as yours it would be better.
     
    Marc-Saubion and Rafarel like this.
  4. TX128

    TX128

    Joined:
    Aug 22, 2018
    Posts:
    25
    I'm a little bit confused. This looks like a new frontend and backend. Will this work on 2018.4?
     
  5. Korindian

    Korindian

    Joined:
    Jun 25, 2013
    Posts:
    451
    Branching, the restore function for individual files (viewing older versions of files in the editor), as well as a larger dropdown window were the things I was missing from the first version of Collaborate, so it's great to see all of that getting addressed.

    I didn't see it in the videos, so pardon if it's already there, but an "Include all" button for the Advanced View would be nice so we don't have to include every file individually.
     
  6. StaceyH

    StaceyH

    Unity Technologies

    Joined:
    Apr 11, 2018
    Posts:
    44
    Breaking out the UI in some way to show a simplified "my work" versus "team work" is a good idea and I'll talk with our designer about that. Making branching simple is definitely challenging - especially when folks inexperienced with VCS will have to use it in some cases.

    It being attached to our storage gives us the ability to build out features beyond what exists with other VCS providers today. We haven't shared much on those just yet (though our next blog post will talk about one), as right now we wanted to share more details on what you can expect in the very near future.

    Regardless, this is great feedback and something we'll talk about as a team.

    We're still working on the exact version but it is looking likely that the new Collaborate will work with the 2019 series and above. This is because of the front end technology (UI Elements) that is being used.

    Ah, yes this was missing from the design videos but not because we aren't planning on adding it - boy would that be frustrating! :) We're planning on the flow of you multi-selecting the files that you want and push the include button, or really you could just click the top file of the hierarchy depending on what that looks like at the time.
     
    Korindian likes this.
  7. IOU_RAY

    IOU_RAY

    Joined:
    Jul 25, 2017
    Posts:
    24
    I have to say, this is the only thing our team cares about with regards to progress on Unity updates right now; even more care than when nested prefabs came out. These collab updates/features look amazing.

    However, if referring to the past with Unity's team history and communication about how they are working on something within collab and then waiting a year just to be told "nothing yet" doesn't have faith or excitement too high just yet.

    Has there been a major shift in priority on this for Unity to focus on, or should we sit back and continue to get used to/deal with the existing plethora of collab issues?

    Certainly not trying to be cynical here but it has been a very rough year+ with Unity development, leaving a slightly regretful feeling towards Unity Teams. We definitely have strong hopes.
     
    petey and Rafarel like this.
  8. JoathrentStudios

    JoathrentStudios

    Joined:
    Jan 27, 2018
    Posts:
    23
    In the history view please allow us to view the diff of a file in the commit. We see which files have changed however there is currently no way to see what those changes are. Would be very good if we could select a file from a previous change and do a "view changes".
     
  9. StaceyH

    StaceyH

    Unity Technologies

    Joined:
    Apr 11, 2018
    Posts:
    44
    Do not worry, you do not sound cynical - we understand why you have this feeling and we're committed to doing things differently. Yes, fixing Collaborate is a priority.

    Our hope is that the developer diaries will be a better bridge for communication and collaboration (no pun intended) with all of you. They'll talk about upcoming stuff so you can weigh in and what's been done since the last update so you know where we are at. Let us know if you find that they're missing the mark.

    Great request! I've passed this along to the team to work it into the design. Given how Unity works today, we should be able to incorporate this with code files as you can use an IDE to see the diff (which is where most people would do that when looking at code). We're not able to show a visual diff of the Unity assets (i.e. a scene) as that functionality simply does not exist in Unity currently.
     
  10. JoathrentStudios

    JoathrentStudios

    Joined:
    Jan 27, 2018
    Posts:
    23
    Sweet!
     
  11. Kreep

    Kreep

    Joined:
    Aug 1, 2013
    Posts:
    9
    Used Collab since many years because it's easier for my team to use.

    I seriously miss SourceTree when I'm working on Unity (vs when I'm working on other stuff with Git repositories). The history is SO CLEAR and it is SO EASY to go back to a commit or to open a file to an old state. Collab is a pain. I really hoped that Collab 2.0 would change everything. The only thing it did is remove the "Checking for changes" and the "edit/move" bug but added loooooooooooooooooong rescan phases that sometimes break for no reason and everything became more lame and buggy than it was before.

    I'm now looking for a replacement tool because updates take so long to come that I don't think it will be production ready before at least Unity 2021. And when I'm saying "production ready", I don't mean out of Beta, but working fine for our everyday needs. You know, like not letting a bug that removes your content on the server when you are doing an edit and a move operation at the same time during 4-5 years.

    My suggestions are : fix Collab before thinking about the UI. Then open a tool like SourceTree and learn from it.
     
    IOU_RAY likes this.
  12. Nyphur

    Nyphur

    Joined:
    Jan 29, 2016
    Posts:
    27
    I've read the developer diary and the features sound good, but the focus on UI has me worried that Unity doesn't understand the abysmal state Collab is in right now. There are project-ruining bugs and crashes that are costing people hours or days of work, things like improving the UI shouldn't be in the priority list until Collab works consistently and is battle-tested.

    I've used Collab now on 6 prototypes and one long term project with a team of several people, and so far I've found it to be a massive time waster and a headache to deal with. It causes delays all throughout my team's workflow, doesn't always actually sync us correctly, and frequently just completely breaks with no indication of what's wrong. Most of the time you open the Collab window it throws a very helpful "Something went wrong" error (even if it then proceeds to work correctly), and sometimes the index randomly gets locked.

    Sometimes Unity will crash while updating and delete loads of your files or just completely brick your project, and the only way to recover is to delete your local copy and re-download the whole thing. I've heard of people encountering these issues only to find that the version stored on Collab's servers is also missing files and their work is just gone.

    Then there's the "Checking for changes" dialog and its V2.0 "Scanning" equivalent. It can take upwards of 15 minutes on one of my projects and as far as I can tell it has literally no reason to exist. Other source control systems don't have to scan the project for minutes at a time, so what exactly is it doing?

    When there are conflicts, we have to choose each file individually and it takes several minutes for each one, and most of the time it just doesn't do anything anyway. Clicking the light blue "see all in project" link to view all the conflicts always shows nothing. Restoring to a previous build on the Collab History window never works, and the "Go back to" for earlier builds also never works. And for certain tasks the Collab window won't proceed in the background as for some reason it's waiting for Unity to have focus before proceeding.

    Like everyone else here, I'm not trying to be cynical. I pay for and use collab because a simple built-in solution that works for all of my staff regardless of technical skill is highly desirable. I honestly don't need branching or merging scripts, or diffs, because we have workflows that avoid conflicts. I just need everyone to be able to push their changes to the server and stay updated with everyone else's changes without spending an hour out of every work day staring at loading bars and completely breaking everything at least once a week.
     
    T5Shared, IOU_RAY and Kreep like this.
  13. IOU_RAY

    IOU_RAY

    Joined:
    Jul 25, 2017
    Posts:
    24
    ^ Couldn't have put it better.
     
  14. marie-unity

    marie-unity

    Unity Technologies

    Joined:
    Aug 6, 2019
    Posts:
    4
    We understand your concern. Rest assured that increased stability is our priority. This is why we are moving away from the homegrown approach and on to more proven technology (Git with LFS). We are rebuilding the backend and front end from the ground up to be more stable and performant. The improvements to the UI are being tackled in parallel to the backend, as we are taking this opportunity to ensure we are building a UI that fits your needs. Our goal is to build for the future while fixing issues from the past. But have no doubt that the UI improvements are not being done at the cost of stability or performance.

    We will give you a more detailed update on the status of the development of the “new” Collaborate in our second developer diary blog post in the upcoming weeks.

    Collab 2.0 was meant to be a stop-gap measure for the “Checking for Changes” blocking dialog that was problematic for some teams while we solve the problem at the root. As we explained in The first steps to a new Collaborate, the “old” Collaborate, which includes Collab 2.0, has been put in sustainment mode as we are working on the “new” Collaborate.

    The issues you are describing can derive from both the client and the backend service. We are rebuilding both as part of the “new” Collaborate and are reworking error messages to better explain issues that are encountered.

    This was originally needed due to the custom technology that the Collaborate service was using. As we are moving away from that, this will no longer be an experience you encounter.

    The single file conflict resolution experience will be a lot faster in “new” Collaborate. We also opened a ticket for exploring batch strategies to help with conflict resolution.

    Thank you for your feedback - it's been very valuable! This is exactly why we're asking for feedback on the UI. Creating a great Collaborate experience requires work on both the back and front end and us understanding the issues you've encountered will help us meet that goal so you can focus on the fun stuff. :)
     
    Nyphur likes this.
  15. Nyphur

    Nyphur

    Joined:
    Jan 29, 2016
    Posts:
    27
    Thanks for the detailed responses to my feedback. I think most of the issues with Collab come from Unity rolling its own tech for things that already exist, so I do believe that the new system based on Git LFS should resolve most of these problems. I want to stress how urgent this problem is though, you're currently charging for usage on a collaboration / source control feature but you don't have a working production-ready system yet.

    I'm looking forward to the developer diary, but is there any ETA on when we might get this feature in our hands? Even a ballpark ETA would help me figure out if it would be easier to change to a working tool like SourceTree and invest in developing new workflows for it and training staff to use it. If it's coming relatively soon, I'd rather just work around the problems for a while so I don't have to force artists to learn Git commands etc.

    Many of us don't need all the advanced features or fun stuff or a perfect UI. I would hope you'd release it in some form once you have a functional and robust repository experience, even if it's single-branch and fast-forward only, and then focus on the UI/UX after. Is that possible?
     
    Immu and Kreep like this.
  16. JoathrentStudios

    JoathrentStudios

    Joined:
    Jan 27, 2018
    Posts:
    23
    Honestly collab is pretty good as is just with some bugs (as is meaning not the 2.0 version). I hope it doesn't get overly complicated as this is a feature where quality is the feature. Make it work please.

    Thanks.
     
  17. tcz8

    tcz8

    Joined:
    Aug 20, 2015
    Posts:
    251
    I agree, we are very happy that you are working on this replacement system but we need to take decisions here. Why dont you pick a release date and stand by it? And while your at it give every collaborate users (paying) a 50% rebate until things are fixed? You know, anything to allow us to make a decision here or some incentive for us to wait cause frankly, I'm running out of reasons to keep using Collab. I'm going to have additional users withing a few months and this will be too messy.
     
    Last edited: Aug 29, 2019
    IOU_RAY and Immu like this.
  18. flyingaudio

    flyingaudio

    Joined:
    Dec 3, 2010
    Posts:
    88
    I feel your pain @Kreep. We dropped Collab, over a year ago, because of the issues. We ended up going with AWS Code Commit (includes 50 GB for free), and I personally use SourceTree for the front end. It's a great combo.
     
  19. IOU_RAY

    IOU_RAY

    Joined:
    Jul 25, 2017
    Posts:
    24
    CodeCommit is fantastic, though sometimes it's a little awkward with requiring fetches more often than other services I find.

    And Yep. Completely losing faith in Unity in general here. Out of the insane amount of ludicrous issues with unity editor and their 'stable' versions that we constantly find workarounds for, and Collab with it's pathetic slow development on VERY serious issues, and hype-ups on "Have something by <x> time". Now cloud diagnostics are goofy/broken.

    You guys are seriously full of it. That's my stance at this point. I thought Adobe practices were disgusting but Unity is having someone hold their beer these days.
     
  20. Rich_A

    Rich_A

    Joined:
    Nov 22, 2016
    Posts:
    196
    Engineering resources at Unity should not be spent replicating Git and Plastic SCM when those platforms/products already provide good version control to studios that need it.

    I don't see how its possible to service both the hobbyist customer base that needs something better than manual dropbox backups, and professional-grade studios.

    The current Unity Collaborate product seems totally fine for the former type of user. Its just very misleading to name it 'Collaborate', it should be called 'Unity Backups' instead.

    I know that every department in a big corporation wants to be a profit centre, but the engineering resources should be redirected elsewhere, and a small team maintained to keep 'Unity Backups' running, and maintain integration with other version control systems. Plastic SCM seems a good candidate to become the 'official' Unity-recommended version control system for teams, with Unity taking a cut of the subscription revenue, in return for helping with documentation and integration.
     
    Last edited: Nov 5, 2019
  21. tcz8

    tcz8

    Joined:
    Aug 20, 2015
    Posts:
    251
    WhOOOoooo I like that. Free is good for a startup!

    I completely agree with that. They should have just added the required UI changes to allow versioning and comparing diffs in scene and the inspector.

    Then you make the whole thing GIT compatible and allow users to configure whatever provider they want in project settings.

    They could even have sold COLLAB as their own "easy & auto configured" git solution and just used the same open source code everyone else uses that would have been maintained for them FOR FREE.

    This would have allowed pro users to use in house servers.

    As a droid once said: Does not compute
     
    Last edited: Nov 5, 2019
    Rich_A likes this.
  22. Nyphur

    Nyphur

    Joined:
    Jan 29, 2016
    Posts:
    27
    Alright, it's been months with no response, no ETA, and no updates from Unity. We're beginning a new project and I need a working solution, so I've now been forced to cancel my Unity Teams subscription and set up a Perforce server. It involves re-developing new workflows and retraining my staff, but at least it works today. We don't even have a ballpark ETA for the new version of collaborate, and the current one isn't fit for purpose.
     
    Rich_A likes this.
  23. ryanc-unity

    ryanc-unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,280
    We're sorry for the lack of communication. We have been hard at work on the New UX of Collaborate for 2020.1 and will release more information when we get closer to that release.
     
  24. Nyphur

    Nyphur

    Joined:
    Jan 29, 2016
    Posts:
    27
    Cheers, we had to make a business decision and move to Perforce anyway. When you say New UX, is it just a UX overhaul or is the back-end now using git-lfs and has been battle-tested in live projects? The main problem with Collab for small teams isn't the UX explicitly but the fact it consistently breaks even when used correctly and can destroy days of work or entire projects.
     
    Rich_A likes this.
  25. ryanc-unity

    ryanc-unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,280
    Hi @Nyphur, I understand needing to use the tools and services that work best for your team and I wish you nothing but the best. At the moment, the New UX is primarily a UX overhaul. We are still in the progress of moving the backend to git-lfs and we will be doing more stress testing with projects representative of teams of all sizes.