5 ms·
So one thing is to use separate repositories - either separate git repos, or use git for code + design data, and something like Perforce for assets. We did this
by NickPollard 13y ago
So one thing is to use separate repositories - either separate git repos, or use git for code + design data, and something like Perforce for assets. We did this at my first studio (Free Radical Design) and it worked very well.
As for git being 'hard', yes it's not trivial to learn, but for people using just perforce/svn etc. they end up misusing so much that it's almost worthless - as Linus said, even just sending around tarballs is better.
I think if you're running a team, you need to give your team the benefit of the doubt that they can learn new tools, learn to use them effectively, and be more productive. If you spend some time teaching them why the tools are important and how to use them, then using git isn't really any more difficult than anything else. It's just different.
- w0rd-driven 13y agoThis is how I've structured our use at the place I'm at. TortoiseGit is better than svn to me. Submodules are the key though in our situation these are best when they can exist in the same directory structure. We create a master repo with all the design assets, statement of work, and any other useful files for the end product. Then we have a client repo as it were of the files we serve in the wamp www directory. Because this is physically different, submodules make little sense. For the WPF builds that all live together in the same directory structure, submodules are perfect. My only hiccup is remembering to commit the subs via the master but that's a habit I need to change. The files in the wamp repo are deployed to client computers using git pull with a read only ssh key so people aren't committing from them. Our wamp files are primarily text either in straight html or usually PHP. We take care not to commit user editable sections so we don't overwrite what a customer ultimately changes. This is kind of a hand rolled version of the now many git deployment tools out there and it works rather well. I know this isn't gaming nor are our source files that large but the psds can be astronomical very quickly on just simple web pages. I could only imagine what goes into "next gen games". GIT is still useful for binary deltas but you definitely have to carefully plan how you partition things in repositories. If I can do this, really almost anyone can. Kiln brought excellent binary support to Hg so there's really no need to stick to svn. There may be areas where its still useful but the distributed nature of dvcs is just too compelling when your team is well... distributed. I do hear great things about perforce too and I hope any company uses the better vcs not because they think the users can't cope with anything new, but there is extreme benefit for doing so. Again, if I could help our team move into Git with very little hand holding, you would probably be surprised how quickly people adapted. Especially if something like TortoiseGit isn't that much different than TortoiseSvn or TortoiseHg for that matter.
- AndrewDucker 13y agoIf you've got assets in multiple repositories you then have issues about leeping branches in sync across all of them. This is absolutely no fun.