Before you say “Oh, this was answered already,” the answers to similar questions were confusing and a little vague to me.
I’m certain everyone has trouble moving/importing files from a PC to a Mac. I am taking a Unity course in the next trimester at my school (and yes, this school is kinda old), and I am getting a head start at home. The problem that I see as inevitable is moving a project from my computer (a PC with Windows 10) to the school’s computer(s) (a Mac with the latest OS). I don’t want to break/corrupt anything, so I will need help. I see a network solution as a waste of time if there is a flash drive available. If a network solution is the only viable solution, I will take it up; otherwise, keep the transfer process as simple as it can get, such as the following:
“Go into x on the PC, and then copy the y and the z folders to the flash drive. Paste those onto x on the Mac, then paste them again at a.”
Note: the above was an example. Try to keep the tech and language at a minimum, as I am in high school
-Manager/Founder of Flippin’ Fun Video Games (FFVD Games)
The project pretty much moves over as-is. I do this myself as I frequently develop on my PC at home, then develop on my Macbook on the road. The only folder you need to leave behind is the Library folder as this contains an OS specific cache. It does however mean that the first copy to the second platform requires a full asset import. Any subsequent copies and you can simply copy over all project sub folders except for .vs, Library and Temp. This way only changes get reimported on either platform.
An important note is that in the editor preferences you need to set it to create asset .meta files so you can ditch the library folder when moving between the 2 platforms.
That was the old way. My current method is automatic and pain free. I have a dropbox account setup on both and my projects live there.
As long as you go into dropbox options, selective sync and exclude .vs, Library and Temp all changes are synced as fast as your internet connection. Plus all assets get a version history to restore to if you desire.
Unity’s hot reload framework plays well with this and even allows you to see changes without a reload of the project. If you update the scene on one platform and forget to close Unity on the other, just refresh the project view and Unity will ask if you want to reload the modified scene.
I find this solution the easiest and practically maint. free. But obviously requires the internet for syncing.
I have several projects set up this way and have never had issues. There may be better cloud services out there but I haven’t tested any of them.
I suggest using a cloud-based source control, such as, Bitbucket. This is more reliable and faster transfer than using a flash drive and has better versioning than Dropbox. Not to mention you have a history of each commit/change you make over the life of the project and can revert to any state quickly.
But yes, Dave is correct that Unity is very easy to transfer between platforms.