There are notable features of SVN’s source control model that aren’t commonly found in other. This is very similar to other version control systems such as Perforce, and is very easy to follow and understand, especially in comparison to Git’s SHA hash-based revision identifiers. Each object has a revision number, and each change is tracked by a globally unique incrementing number. SVN uses a traditional file-based model to track changes. As we will see later, there are in fact workarounds to this issue. This should not be an issue in our day and age, but it does mean that you cannot easily work offline and keep a local version history. This implies that, in order to share changes to others, you need to be connected to the central server. The centralized is generally the way game development teams collaborate on game projects. In enterprise projects, a centralized repository allows for better access control over the intellectual property stored in the version control system. Even in open-source projects, there is a central or “blessed” repository where the official releases emanate from. Even though distributed version control existed at the time, a centralized model appears logical and simpler. SVN was designed as an improvement over CVS, which was centralized version control. Here we will go through what is relevant for us. The official website lists the main features of SVN. Existing projects and organizations may not want to pay the cost of migrating, especially when the development community at large becomes more aware of the limitations of Git and DVCS they may have to contend with. ![]() Subversion doesn’t benefit from a large platform such as GitHub, but it remains a robust and proven solution. While it has certainly lost some of its popularity with more recent open-source projects in the age of GitHub, Subversion is used by many large open-source projects and in many organizations. Recently, Subversion celebrated its 20 years of existence and is arguably still the most widely used source control solution today. Apache now oversees the ongoing development and distribution of the rebranded Apache Subversion and is still looking for contributors to the project, in true open-source fashion. In 2010, Subversion became part of the Apache Software Foundation, one if not the most well-known organization maintaining large open-source projects. Subversion 1.5, in particular, was a major release that introduced highly needed features, most notably automated merge-tracking which is seen today as essential in a source control solution, as well as mirroring capabilities. Subversion has since then become a pillar of the software development world, overtaking CVS and becoming the standard for many years, both in the open-source communities and in the enterprise world. The main goal in designing Subversion wasn’t to reinvent the wheel or a new source control model but to have a better CVS, without the bugs and the features deemed unnecessary or badly designed. Subversion was started in 2000 as a replacement and improvement over CVS, the most popular version control at the time. So, is SVN a good source control solution for game development? Let’s dig in! This article was a good opportunity to get familiar with it again and see how it competes against the other solutions we have studied so far. ![]() Personally, I haven’t used SVN since my early programming days, and never in my professional career. While not a common choice in larger studios, smaller ones and indie teams have long been using SVN as their backbone and for good reason. ![]() In the games industry, SVN remains a very popular choice due to being free and implementing the file-based source control model which maps so well to our needs, as outlined in the previous articles. Its massive popularity from the 2000s until today has only been outshined by Git fairly recently. We couldn’t reach the end of this series without talking about a source control giant, I’m talking of course about Subversion or SVN for short.Įvery programmer should have heard of Subversion. This is part of a series of posts on source control for game development.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |