Game Development Reference
In-Depth Information
which now may have to be reverted to get the build working again. This is a big
waste of time. While all of this is going on, another programmer is frustrated because
he can
t begin making major changes to the AI code since it might need a tweak to
make the build work, too. Getting the build to become stable with everyone working
in one branch basically shuts everyone down until the build is complete, which can
take more than a day in some cases.
But the problems don
'
s assume the completed build is going to be
tested by a remote test team, and the build takes hours to upload to their FTP site.
By the time the build is uploaded and then grabbed by the test team, it could be two
days. If the test team finds a problem that halts testing, the whole process starts
again, with the whole development team hobbled until testing gives the green light.
This whole process could take two to three days or more.
If you don ' t think this is that bad, you are probably working without branches and
have trained yourself to enjoy this little hellish scenario. You
'
t stop there. Let
'
'
ve probably developed
coping mechanisms that you call
instead of what they are, which is crazy. I
used to do the same thing because I thought branches were too much trouble and too
confusing. Until I tried them myself.
Let
process
s look at the same scenario from the perspective of a team that uses branches.
The lead programmer walks around and makes sure the team has all the milestone
changes checked in. She goes to the build machine and launches a milestone build.
The first thing that happens is the Gold branch gets refreshed with the very latest of
everything in the Trunk branch. The build finishes with the same failure as before
'
compile errors due to missing files. The programmer responsible simply checks the
missing files into both the Trunk branch and the Gold branch, and everything con-
tinues without delay. The AI programmer mentioned previously continues working
without worry, since all of his changes will happen in the Trunk branch, safely
away from the Gold branch.
The finished build is checked and sent to the testing group via the same FTP site, and
it still takes almost eight hours. When the build gets just as hosed as before, the lead
programmer makes a small tweak directly in the Gold branch to get it working, and
she uploads a small patch. The test team gets to work and reports a few issues, which
are then fixed directly in the Gold branch and merged back into the Trunk branch.
When the milestone is approved, the Gold branch has the latest and greatest version
of the game, and the development team never lost a second during the entire process.
They even have the bug fixes that were made in the Gold branch.
Every minute of lost development time means your game is a little less fun or a little
less polished than it could be. Given the above
which team do you think is going to
Search WWH ::




Custom Search