Hi,
Let me clarify this. I am now totally relying on Github for all my projects, and it works very well.
A PlayMaker Fsm is a binary file and os you can't work concurrently on a binary file because if there is a conflict, you don't know exactly who change what and how to merge it ( unlike a text file where you can check who delete/created insert new lines and characters, and merge concurrent work together).
This is true for images, and all assets that are no text basically, so a Unity scene is also impossible to merge ( they are working on it, I think u5 will allow for for this soon)
However, it doesn't mean it's not useful. I woud actually go up to mention that this is mandatory for anything serious where loosing work is not an option
Please check my github account, you'll notice that all my projects are Unity projects with PlayMaker, and it works very well.
https://github.com/jeanfabreAll the ecosystem back end is relying on github projects, all the custom samples, custom actions scripts you get from the ecosystem comes from Github, which are Unity projects repositories.
On top of that, I am not a "terminal" person, and most github googling will show you how to work with github with a terminal, but I just can't work this way... so I use SourceTree, and it's fantastic!
http://www.sourcetreeapp.com/So you can create either a bitbucket or github account ( I have both, and I access all of it viy sourcetree).
Give it a go. even if you are the only one working on a project, this will give you peace of mind, that you can't loose work, you'll be able to revert on case of issues, etc etc.
The main thing are:
-- Commit often. litteraly several times per hour, at least everytime a feature is c-- reated, tested validated, so that you progress with a full back up of granular changes.
-- conflicting files is ok to havem, don't panic, you can always choose which one to pick ( your version or their version), simply check with the other author, and choose. SourceTree has everything to deal with this elegantly. If you messed up, revert, no bid deal. It's stressful the first few times you do this, but once you assimilated the processed, you'll be fine.
-- Work with PlayMaker templates. Working with templates means that several developers can work on the project, if you decide who's working on what, templates will be easier to work with. You can even work on the same prefab, the prefab remains unchanged most of the time, if you just need to edit the template logic or something.
-- Work with prefabs. Your scene, typically main scene should be probably entirely made up of prefabs, so that it's never a problem to work on the same scene, but on different features.
-- Use Agile development with your team. make short meetings often and regularly, explain what you will be doing, what's blocking you, etc etc, and so you will be less likely corrupting or working on something that someone else is working on.
-- If you are a remote team, skype is a must. Some people will tell you that calls are a sign of issues on a project, but I more and more disagree. I skype multiple times per day on a project that goes very well ( can't wait to share this with you guys
) and it's simply because there is a team effort to saty on top. Short meetings, quick explanations, back to work, commit, pull/push, merge work, and that process is repeats several time per day.
-- Use Trello to define tasks, assign tasks properly, manage them properly, so that the trello board is a clear view of what's going on, so that if you spend few days on another project, you can come back and glance trhough this trello board to see what's going on.
Bye,
Jean