If you're just starting out then an LFS-enabled Git should be fine for small projects if you have a good .gitignore, and also check the files you're about to add should be added. The basic reasons I'm aware of that it's not popular in gamedev is that it's not good at handling large binary files which change as it just stores each version in its entirity, it doesn't support file locking so teams can hit problems with binary files being changed by multiple people with no merge capability, and that when you check out the repo you get the whole lot local including all previous iterations.
This means that the repo gets very large and unmanageable fairly quickly slowing down the repo, and if someone only needs access to a small part of the repo (for example a composer accessing the assets for the soundtrack) they end up with a massive amount of data they don't need.
For small one-man projects, or very small teams, this can normally be worked around though and it's a fairly simple workflow.
Beyond this I'd recommend either Perforce or PlasticSCM, both of which are designed to avoid these types of issues. These are both available in free versions for small use cases but will cost when scaled up, and they tend to feel a bit clunkier (to me) than most good Git clients.
The free version of PlasticSCM does a pretty decent job of providing the most important bits of git in a simple fashion - plus it's particularly good for game dev as it's designed to handle huge binary blobs as gracefully as possible. It also provides features for comparing certain media types such as textures between changesets too, which is sometimes pretty helpful.
In my experience they're all fine though, just a case of getting over the hump with one and then you're sorted.
(Although to be honest Team Foundation Server did rather taint my relationship with version control for a while..)
I use PlasticSCM for "real-life", and hands-down it is the best source control on the planet. We get TFS for free from MS, but opt to pay for PlasticSCM instead.
The branching and merge tooling makes anything else feel like a kid's toy.
Not only is the branch explorer fantastic, plastic has the ability to semantically understand the changes that you made in code (unlike SVN, where it's just a text diff). That makes merging 10x less painful for me than for a client on TFS or SVN.
So I can't recommend it highly enough for SCM.
But what's with the game-oriented angle? Here's the pitch: Most source controls are tooled around code -- your artists are silo'd in their own world.
In an ideal world, all of those assets would be managed and versioned in the same version control. You wouldn't have to come up with a separate team "pipeline" to port the assets from one team to another.
Their solution is Gluon: https://www.plasticscm.com/gluon-in-detail.html
My hobby projects aren't ready for a contracted artist yet, but once it is, I'm planning on adding Gluon to the toolchain -- so let me know your experiences with it.
I'm running the free version of PlasticSCM on a server from my house, which I also back up to a NAS. Obviously that doesn't cover me against fire or theft from my house, so I've been meaning to move it online for safety, although you have to pay for the cloud version of course.
It's worked really well for me, simpler to set up than others I've tried, and comes with Unity integration and specific tools for comparing images and so on.
Best thing about it though is that it's really good at handling those big binary lumps.
Hmm we use that at work and are getting pretty sick of it to be honest (we used it for a long time). The devs have a tendency to push out new features that are half baked (streams for instance), and the GUI and tooling is poor. The API is terrible as well.
We have (just in the last week or so) been looking at Plastic SCM, and it looks promising so far. e.g. a merge tool that can track moving code blocks, and a gui that looks like it was updated in the last 10 years.
https://www.plasticscm.com ticks most of those i think. Minus the wiki/ci/task manager and some of the more specific features. Plus it seems actively developed as of late (new features vs bugfix churn).
According to this Plastic is free for up to 3 users and then $7/month/user after that. Not sure about student licenses. You can find step by step instructions on the bottom of this page.
The plugin isnt in the store anymore because Plastic is automatically included in Unity now. Click Windows->Plastic SCM and dock it somewhere.
Everyone telling you to use LFS with Git hasn't tried using a new SCM. https://www.plasticscm.com/version-control-history
It’s on their main page: https://imgur.com/HShuU0x as well as in the video they have there. Working in branches is the better way. Merging them is a no-brainer. Send your boss the link for the perfect workflow: https://www.plasticscm.com/book/#_a_perfect_workflow
I've been doing some more digging.
PlasticSCM sounds like it's made for something like this. Except it's a closed system for teams apparently. =( I had heard the name before but didn't know what it was, apparently places like game studios use it for art assets. I found a forum post where certain permissions can be set to allow anonymous access, but unless someone has more info I'm thinking that's a bust. It also seems to require an app to interact.
Gitlab is out, limits are too low for their cloud service.
Github might be the option if I can get all the files below 100 MB. Or get comfortable using Git LFS.
Bitbucket might also be an option. From what I'm reading, they warn against large binary files, but they also reference keeping things under a GB. =O
At my work, where I'm more of a programmer than a designer these days (I'm a web guy who studied GD in college), I got around this by using Subversion "locally." It's not perfect, but at least assets can be version controlled and I'm not doing the xxxxxxx.final_final-2021.psd. And the passing around of giant repos doesn't happen.
I'm open to more suggestions if anyone has any. For now I'll have to find some time to organize the files into something shareable and give Github and Bitbucket a try. Thanks for the help so far!
We used all of the above, PlasticSCMwas the most stable and simple to use so far and we had no problems. It's free for up to 5GB/3 users and works great with binaries and large files.
You could try PlasticSCM's Gluon interface.
https://www.plasticscm.com/gluon.html
We use this at work but I'm a programmer so can't speak much to gluon. The artists seem to have a decent time with it. Not necessarily an archival tool but you can go through file history if an asset makes a major revision that needs addressing.
Interesting, there's a Unity plugin:
https://www.plasticscm.com/unity-plugin.html
EDIT: But the Unity plugin only comes with the premium models, which is cool, but the basic premium only comes with 5gb of space. For 50-100gb it's actually $30/mo. Hmm.... that's pricey, by comparison.
I'd definitely recommend PlasticSCM. Absolutely amazing for game development where you have a lot of big binary files and then tiny source code files. It handles both like a champ.