- Is your configuration too big and complex for files?
- Is your configuration more like code than configuration?
- Does configuration have a large production impact?
- Are configuration changes hard to review?
- Are multiple configuration changes hard to merge together when it’s time to ship?
- Are you building a game with lots of assets and configuration?
Configuration is generally structured and managed as large text files. YAML and JSON formatted configuration is very popular. These formats are unordered, meaning standard version control solutions like Git cannot reliably produce diffs and merges. Moreover, configuration can get quite large, running up against the file size limits of tools like Git.
This use case is particularly popular in video games where much of the game functionality is modeled as configuration. Store the likelihood of an item drop or the strength of a particular enemy in Dolt tables. Review and manage changes. When the configuration is ready, use a build process to create whatever format your game needs.
Most large configuration files are stored and versioned in Git. If the files get too large they are store in cloud storage and linked to Git using git-lfs. If the files are stored in git-lfs, you lose the ability to diff the contents of the files. Dolt improves the experience by adding query capabilities and large fine-grained diffs to the data stored in configuration files. The diff and merge experience will be greatly improved in Dolt for this type of data.
Let us know if you would like us to feature your use of Dolt for configuration management here.