What Do You Want In a Server Migration Strategy?
Are you planning or looking to upgrade your servers? It is vital to plan your server migration strategy. Let’s review your options for migrating your system.
DHI Migration Strategy
A "detailed history import" (DHI) migration moves everything from your original repository. This all-inclusive approach includes:
- Branching and merging relationships
- Links to defect trackers
- Every revision of every file
- File contents including change, userid, date, and time.
There several technical challenges to completing a DHI migration. Moving every aspect of your current system could include additional costs. Plus there are scheduling risks when relocating massive amounts of data.
It is important to ask – do your requirements demand a detailed history? Is it really worth the effort? Let's check out our example.
You can see that the DHI strategy migrates the entire recorded history, including patches that were not merged with the mainline. If you are a larger enterprise, this DHI strategy could attempt to import hundreds or thousands of check-ins, comments, and commits.
Lightweight BBI Migration Strategy
There is another migration strategy to consider, "baseline and branch import" (BBI). Rather than moving over every detail, you can just focus on the key points. This strategy provides optimal benefits with less work.
Using this approach, you can take snap shots of your directory structure over time. These baselines include major branching operations. Once migrated, can visualize and diff only the key points using Perforce’s Revision Graph and Time Lapse views. It leaves the minor details behind.
Using the same example, you can see that only the important points in your software’s evolution are moved over.
With BBI, changes made up to patch 2 on the v2.0 release maintenance branch are recorded. It excludes details about the additional patches that were not merged into mainline and do not impact future releases.