Game Development Reference
In-Depth Information
'
The two additional scripts you
ll need to build and manage your changes in a multi-
branch environment are Open and Close. Here ' s an outline of what you ' ll want in the
Open script:
n Get the latest files in the Trunk branch.
n Unlock the Gold branch and revert any modified files.
n Force-integrate from Trunk to Gold.
n Submit the Gold branch.
You may notice a command to unlock the Gold branch. More on that in a moment.
Take a look at the Close script:
n Get the latest files in the Gold branch.
n Integrate from Gold to Trunk.
n Resolve all changes.
n Submit the Trunk branch and the Gold branch.
n Lock the Gold branch from all changes.
The integration commands are expected, but if you look at the last two lines of the Close
phase, you ' ll see that the Gold branch is locked so that no one can change it. The Open
phase unlocks the files and reverts any changes. Why bother? This makes absolutely
sure that the Gold branch is only open for changes during milestone approval. If no
milestone build is in test, there should be no reason to change the Gold branch.
This has an added side effect: Anyone who wants the latest approved milestone build
can simply grab the code in the Gold branch and build the game. This is especially
useful if the odd executive or representative of the press wants to see a demo. Even if
the last build is missing from the network, you can always re-create it by building the
Gold branch.
Builds Were Tough on Thief: Deadly Shadows
On Thief: Deadly Shadows, there was an unfortunate problem in the build
process that no automation could possibly fix. Since the project was really
large, and there was no automated testing, the test team would only get
new builds every couple of days. It would take them that long just to be
sure they could send the latest version to the entire test team. The problem
was that the new build was launched at fairly random times, and the
development team was never given much if any notice.
Now, I know what you
re thinking. If every submission to the source repository
were individually checked, then a new build should be able to launch at any
'
 
Search WWH ::




Custom Search