GSoC/GCI Archive
Google Summer of Code 2014 Git

Git configuration API improvements

by Tanay Abhra for Git

Currently git_config() uses a callback mechanism and file rereads for config values. Due to this approach, it is not uncommon for the configuration to be parsed several times during the run of a git program. Instead of using the above method, we will construct a in-memory cache of the config file the first time a config value is queried for. The callbacks will be rewired to use the new API functions provided for efficient lookups from the internal cache. After this, new features can be added.