Chris Stevens and Steven Brown, former students at the University of Bolton and junior programmers at Lucid Games, came to give us a talk about their experience in the industry including certain tasks that they do and what tools they use in order to complete their daily jobs. Many interesting topics were brought up, but the one that really caught my attention was ‘source control’.
Source control is a huge part of sharing work within companies as it allows a backup of the project and allows everyone to be on the same build. From the (Schmidt, 2013) online blog titled ‘revision control: learn it, use it’, it mentions that ‘you can check in your changes as frequently as you’d like, see the differences between revisions clearly and switch between older versions and your current version easily’. This tells us that you can easily use source control as a reliable backup for work allowing the workflow to carry on smoothly.
With source control, there are a few issues that go with it. (Skeet, 2010) mentions on a post that, a con of using source control is that it has a ‘lack of IDE and explorer integration’ meaning that the software can be hard to understand, which in return might break the project. From previous experiences especially with Unity, I have come across issues such as, the scene breaking or code not being updated correctly due to Git creating merge conflicts. This will knock the project back by time which in a company could be very bad.
Source control can be very complex to use the first time you come across it which can cause major issues with development. From the (Loh, Swierstra and Leijen, 2007) online paper titled ‘A Principled Approach to Version Control’ they go on to mention that ‘version control systems have evolved into complex programs managing huge source trees with multiple branches’ which tells us that source control isn’t as easy as opening the software and committing, instead you have other things to check such as, which branch you are committing to, making sure someone else isn’t performing a commit and making sure that your commit won’t break the current build.
To conclude, source control is widely used within the industry to backup and to share work with each other. Problems can set back the project if anything does occur however, source control, such as Git, offers a way to reverse that commit so no damage can be caused. It is very handy to know a wide range of source control software as companies tend to have their own specific choices on what they prefer.
Schmidt, K., 2013. Revision Control: Learn it, use it. [Online]
Available from: http://www.gamasutra.com/blogs/KarlSchmidt/20130815/198378/Revision_Control_Learn_it_use_it.php
[Accessed 07 April 2016].
Skeet, J., 2010. What are your pros and cons of git after having used it?. [Online]
Available from: http://stackoverflow.com/questions/343675/what-are-your-pros-and-cons-of-git-after-having-used-it
[Accessed 07 April 2016].
Loh, A., Swierstra, W., Leijen, D. 2007. A Principled Approach to Version Control. [Online]
Available from: http://cs.ru.nl/~wouters/Publications/PrincipledVersionControl.pdf
[Accessed 08 April 2016].
Unknown Worlds, 2013. GAME DEVELOPMENT: VERSION CONTROL. [Online image].
Available from: http://unknownworlds.com/blog/game-development-version-control/
[Accessed 08 May 2016].