Hi there game dev veterans!
What version control software do you use at your studio? And which one would you recommend for ease of use and stability?
Hi there game dev veterans!
What version control software do you use at your studio? And which one would you recommend for ease of use and stability?
Most studios seem to use Perforce, used Tortoise SVN at Frontier though.
Been using Perforce at Codemasters and Rebellion.
I started perforce yesterday, but steep when you never have done something with servers!
Where are your servers? On the cloud or in a private server? To a beginner as myself, the cloud seem better, less expensive, and safer, don't know if I'm right though!
Perforce can be hard to wrap your head around if you've never used it before and you have no one to show you how it works.
Perforce is my favourite of the ones that i've worked with. Currently we're using Plastic and i think it's pretty horrible for art/design people. Coders seem to love it tho.
I'd say git is great for beginners, then there's also Git Large File Storage
Perforce is amazing for game development. It should always be your first choice. The only issue it has relative to other SCM's is it can be a little harder to setup but once you have it setup it's way easier for non-programmers to understand relative to other SCM's.
Dont use git for games! It's meant for plain text repositories (and it's amazing for those types of projects). It should not be used projects with huge amounts of binary assets. Git large file storage will silently fail when trying to branch. I've heard people have had some degree of success with git-annex though. If your coders absolutely have to use git, perforce supports a git repo in a perforce repo via git-fusion.
Sorry for the opinionated post. I've had to manage various build systems and SCM's for a few years now and have felt a lot of pain.
EDIT : The perforce C# (other languages also supported) api is amazing when writing tooling. There's many engines out there with such a high level of integration the artists never even use the visual client.
Some day I would like to try out PlasticSCM (comes with semantic diff/merge) and ClearCase (just because I've never tried it, no idea if it's good).
If you have any SCM issues or questions I can try to help out. Regardless of whether you choose git or p4 (or otherwise).
Quote from SteppenwolfPerforce is my favourite of the ones that i've worked with. Currently we're using Plastic and i think it's pretty horrible for art/design people. Coders seem to love it tho.
Ah you've used Plastic?
So it's not as good for artists as it claims to be? I had a feeling when I read their site that it might be too good to be true. They are essentially claiming they have the best of git and perforce with semantic diff/merge (albeit I think only for C#, C++ I guess might be a lot more difficult to do).
What did you not like about it relative to perforce?
Quote from AlexMAh you've used Plastic? So it's not as good for artists as it claims to be? I had a feeling when I read their site that it might be too good to be true. They are essentially claiming they have the best of git and perforce with semantic diff/merge (albeit I think only for C#, C++ I guess might be a lot more difficult to do).
What did you not like about it relative to perforce?
It's just not simple and straightforward at all to submit stuff. We constantly run into some issues because Plastic is anal about something. And it can be quite time consuming to submit even a small change if your workspace isn't up to date or someone else submitted something while you were uploading your files. It's quite bad for productivity.
Quote from AlexMIf you have any SCM issues or questions I can try to help out. Regardless of whether you choose git or p4
I will take you up on that help offer when i'll have covered the basics I guess. Currently I am struggling to set up correct workspaces and correct file mapping, but I tried to set those up when I was really tired, so that explains!
Are there things to look out for on the server side, like particular specifications?
Having no server myself I'm using the cloud based service from Perforce to begin with, which, from what I understood, is like Assembla but with more space storage on the free versions (5Go should be enough for that game since it is supposed to be a lightweight game usable on mobile devices, or maybe I'm completely off, it's the first game my team is doing to be honest)
Alienbrain: have briefly used it at IO-Interactive not enough to really have an opinion though. ?/00
Tortoise SVN: its got a kind of ghetto reputation but it always gets the job done so yeah ... I like it 8/10
Perforce: I can not share your guys enthusiasm I think all of their front ends (p4V, that windows explorer shell extension, maya & photoshop plugins ... you know the parts that me as an artist actually gets in contact with) are pure and utter vile gutter trash 2/10
Dropbox: not exactly a "subversion" system but I use it right now to sync files back and forth with a coder friend and we have our entire unity project just sitting in there in the dropbox folder and i am SHOCKED how well and fast that works ... or that it works at all really ... 9/10
Quote from laminutederireI will take you up on that help offer when i'll have covered the basics I guess. Currently I am struggling to set up correct workspaces and correct file mapping, but I tried to set those up when I was really tired, so that explains!
Are there things to look out for on the server side, like particular specifications?
Having no server myself I'm using the cloud based service from Perforce to begin with, which, from what I understood, is like Assembla but with more space storage on the free versions (5Go should be enough for that game since it is supposed to be a lightweight game usable on mobile devices, or maybe I'm completely off, it's the first game my team is doing to be honest)
Ah ok. With perforce cloud you have to use streams. That's probably why you can't see anything. When setting up the workspace you need to make a stream for it as well.
streams are not something I've liked about perforce. When possible I don't use them but I also have a perforce cloud account and therefore have to use them.
Quote from WarbyAlienware: have briefly used it at IO-Interactive not enough to really have an opinion though. ?/00
Tortoise SVN: its got a kind of ghetto reputation but it always gets the job done so yeah ... I like it 8/10
Perforce: I can not share your guys enthusiasm I think all of their front ends (p4V, that windows explorer shell extension, maya & photoshop plugins ... you know the parts that me as an artist actually gets in contact with) are pure and utter vile gutter trash 2/10
Dropbox: not exactly a "subversion" system but I use it right now to sync files back and forth with a coder friend and we have our entire unity project just sitting in there in the dropbox folder and i am SHOCKED how well and fast that works ... or that it works at all really ... 9/10
Do you mean alienbrain? If so I thought that was discontinued years ago.
Also dropbox. They don't have a secure history. You lose all concept of revision control using it.
Tortoise SVN, cause it's really easy to use. I've used Perforce too, I had no issues with it, but in the end, I always liked SVN more, don't know why, feels simpler.
Quote from AlexMDo you mean alienbrain? If so I thought that was discontinued years ago.
Also dropbox. They don't have a secure history. You lose all concept of revision control using it.
Yes Alienbrain ... Alienware makes pcs good catch
and exactly dropbox isnt a subversion system.
Steppenwolf its not the complexity that bothers me but the usability.
The photoshop plugin for example doesnt load automatically so if you forget to load it manually (which i do practically always) it will not tell me that i have to check out a file until i am done doing my edits and what to save it and than I might find out that it has been checked out/locked (btw why isnt that one button/prompt that does both !?!?!?) by someone else the whole time.
The Maya plugin on the other hand does load automatically but it doesnt care what repository/stream/workspace/branch a file is in it will try to check it out from what ever repo the P4V tool last used and more often than not that file doesnt exist in that repo giving you a cryptic error msg and NO OPTION TO SWITCH REPOSITORIES.
The windows explorer shell extension has the same problem + its missing a fuckton of functionality D:
Perforce on a whole is also oblivious to new files having been created inside your repo folde until you run that "reconcile offline work button" which btw takes AGES to analyse our project ( tortoise svn does practically the same thing as its default behavior and its near instant ) and not a day goes by without me having to track down some person that hasnt committed all of their source files because perforce ignored their creation ... so yeah I hate the manual "mark for add".
There is a million other small shortcomings ... I could rant for hours or days about how much I hate perforce.
Quote from tommI'd say git is great for beginners, then there's also Git Large File Storage
LFS is a piece of crap to get to work properly. Use P4. If you want a server, assembla.com offers free p4 space.
Don’t have an account yet? Register yourself now and be a part of our community!