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.

Long story short: don't use Collab

Discussion in 'Unity Collaborate' started by andrew-lukasik, Jun 5, 2017.

  1. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    Just realized I lost few days-worth of work (+1 week on fixings damages done). Can't believe this happened Again...........
    This time: multi-threaded code - I was murdering myself over past few days and god know whats more..... Needless to say - this breaches the sole purpose we use version control - so our work is safe, and we can sleep at night.
     
    Last edited: Jun 9, 2017
  2. Ryan-Unity

    Ryan-Unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,993
    @andrew-lukasik that really sucks, I'm so sorry that happened! Did deleting your snapshot file not upload the changes that you're missing?

    Could you go into more detail about the multi-threaded code that you're referring too? Are you missing files, sections of code, changes to that code?
     
    MitchStan likes this.
  3. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    I'm missing revisions of many files across entire project (it's different project from previous incident). Depending on any particular file - it stretches from about 0 to 6 days. Newest revision for this C# file is from 6 day ago. I pushed commits many times since then. But Collab reported no problems while they happened and changelog entries kept disappearing every time commit happened - like everything was ok. Only today I noticed that some commits are empty and there is no trace of my files/changes I thought I successfully uploaded back then.
     
    Last edited: Jun 8, 2017
  4. Ryan-Unity

    Ryan-Unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,993
    Could you submit a bug report from that project so that we can take a look at your logs? We want to see if we can find any empty commits on the server side and need your logs to help us do that. After submitting the bug report by going to Help->Report a Bug, please post here your Fogbugz number so that we can look it up.
     
  5. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    It's 918393

    EDIT: Maybe it helps to precise that the exact moment I realized what happened is when I clicked "Restore" button in Collab history window. All my changes were reverted to old ones (far too old ones).
     
    Last edited: Jun 7, 2017
  6. Ryan-Unity

    Ryan-Unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,993
    Thank you for the bug report and the clarification. I'm curious, have you made much use of Go Back To earlier revisions in the Collab History window? Do you Publish changes after going back to those earlier revisions?
     
  7. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    I tried to switch project to other revisions but Collab couldn't do that for some reason (some file conflicts or something, cant remember exactly)

    It may be of some interest to you here that the original cause I even clicked Restore was my EditorWindow class IssueTracker.cs. It is my todo list. It saves entries as text files. And these *.todo files had long and annoying history of not working well with Collab for some reason. Very often Collab had problems with these files in the past (giving me errors of sort: "file doesnt exist", "cant restore file" and other similar issues). I clicked Restore just to get rid of these...

    Yes, i pushed few (1-2?) commits after it happened.
    Mentioned IssueTracker.cs was giving me critical error then and i made small change to limit file name length because I came to conclusion that this may be the cause of file access error.
     
  8. Ryan-Unity

    Ryan-Unity

    Unity Technologies

    Joined:
    Mar 23, 2016
    Posts:
    1,993
    If you could let me know what errors you were running into when you tried using Go Back To then I can offer better suggestions on how to get around them.

    Thank you for letting me know about that. If it's alright with you, I'd like to try playing around with your todo list script, which was included in your bug report, to see if I can run across the same issues that you were.

    I was curious whether you might have done it more often than that. When publishing after going back to a previous revision you're effectively undoing the changes made in the commits between that version and the latest. My guess was that perhaps you were unintentionally undoing some of your changes when you did that. But that may not be the case if you've only done that a couple times.
     
    Last edited: Jun 7, 2017
  9. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    Sure, go ahead. I would like to know what I coded wrong there too

    I did this only once. Usually I just revert single files when needed

    That would be embarrassing but I really believe I clicked Restore > then I discovered what happened > only after that I pushed something - so operation should be on the top level with no newer pushes to undo. Definitely no "Go Back To" + pushes before that
     
    Last edited: Jun 8, 2017
  10. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Long story short: I'll continue using collab. But I think that the process needs a little more clarity. Trying to ram the entire history into a silly column of bad data is *atrocious* design and leaves no room for warnings or explanations or even a visual map of where your data is going, which can probably lead to people reverting things they don't need to, my 2p :p

    I think cases like this are great for illustrating flaws in usability not necessarily bugs.
     
    quixotic and Ryan-Unity like this.
  11. andrew-lukasik

    andrew-lukasik

    Joined:
    Jan 31, 2013
    Posts:
    230
    So,
    I downloaded one of my other old projects that was hosted on Collab months ago. Changed few things, pushed few commits. And, not very surprised this time, I saw this when updated repository of this (the same) project on another machine:



    I recognize those silly error messages very well, But - I already fixed them and pushed everything from machine A (as seen on the left).
    Collab may be ok for some, it's ok. But it consistently refuses to work for me for some mysterious reason. PlasticSCM is wonderful tho :).

    (I uploaded both 2 repositories with cache data as Case 955503)
     
    Last edited: Oct 1, 2017
  12. tcz8

    tcz8

    Joined:
    Aug 20, 2015
    Posts:
    500
    Well well... here we go, its 2019 I've been paying for collaborate for a while now and it still mess up all the time. Freezes on submit, freezes on revert, freezes on pulls.... it ruins my day more often than Its actually usefull.

    IF AT LEAST it gave out errors instead of freezing the main thread.... I tried letting it run for hours and Unity is still frozen, time to terminate it and play collab roulette again.

    I tried upgrading Collab to the preview version once... it kept crashing on submit. I'm starting to feel like collab can only handle small projects.

    We can't keep working like this.
     
    Last edited: Jul 30, 2019
    Rafarel likes this.
  13. Rafarel

    Rafarel

    Joined:
    Jul 21, 2017
    Posts:
    199
    I agree that source version control is a critical point and should be reliable at all cost.
    That is why I use Collaborate AND Git.

    Collaborate is a good idea and needs time to develop and I agree that Unity should invest more on this because their are the ones that are supposed to master unity object merging and versioning. A 100 percent reliable Collab would be a killer feature. For now, you just can't trust it because it acting weird all the time, so loss of confidence
    and patience on the user side ...

    I use Collaborate on my 3 members team because I'm the only that understands Git (dev). The other members are Game designer who balance the game and Artist and they do not master Git. Even Collab was a bit hard to learn for them at start (even more while acting weird, it is so confusing and error prone).

    I think my artist could use Git now because there is no need to merge the binary file on which he works on. So it is just add, commit and push workflow ... pretty easy.

    The most difficult challenge is between me and my game designer because it happens that we work on the same assets files at the same time so we need to merge ou work some times. And even Collaborate make mistakes while merging, I can't imagine doing this manually.

    So we are working on Collaborate mainly, and every time I pull from Collab, I commit the changes on my Git repo for me and the safety of our project.

    Form a dev point of view it is very cool to use Git in addition to Collaborate because you have great diff tools in my Git client, plus my IDE (Rider, the best one IMHO) shows me the modified lines in my files so it helps me a lot to navigate through my code.

    Collaborate can be a great tool, just give him time, even if you are already waiting for so long :)
     
  14. xofreshxo

    xofreshxo

    Joined:
    Apr 12, 2017
    Posts:
    68
    That seems like a good idea, I've always used git but Unity Collab made it so much easier to properly import packages and ignore things that I just used Collab. I ran into a "bug" two days ago where Collab thinks that my project needs to be updated from the original commit and now I can't commit anything and feel like I'm in limbo. I guess I will commit what I currently have to git and rely on that for now.
     
  15. Rafarel

    Rafarel

    Joined:
    Jul 21, 2017
    Posts:
    199
    Ryan-Unity likes this.
  16. Rodolfo-Rubens

    Rodolfo-Rubens

    Joined:
    Nov 17, 2012
    Posts:
    1,192
    So the company decided to make a game jam this end of year and my team opted for using collab as our tool for versioning and collaboration, well, 2 days and it's not working as expected, lots of "Can't send revision to the server" error (these I can just clear and try again but still...), one of my coworkers is having an error because of a changed .meta file so he is not being able to send his changes, the list of changed files doesn't update automatically I need to mess with the collab window width to force update, no revert file to a specific point, etc. It's a no no for me next time.
     
  17. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Collab is already sunsetted and will be removed soon. It's being replaced by the battle tested Plastic solution. This thread is fairly old too!
     
    andrew-lukasik likes this.
  18. tcz8

    tcz8

    Joined:
    Aug 20, 2015
    Posts:
    500
    Yeah guys, seriously, if you are still using Collab its time to call it quit. I moved to Plastic a while before unity bought them and it's the best move I did. Have not had a problem that wasn't my fault since.
     
  19. Rodolfo-Rubens

    Rodolfo-Rubens

    Joined:
    Nov 17, 2012
    Posts:
    1,192
    Oh I didn't know UT was going to abandon Collab! I will suggest plastic in the next game jam.
     
  20. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723