Hi, this is version 2 of the series from https://public-inbox.org/git/20180622162656.19338-1-ao2@xxxxxx/ The .gitmodules file is not meant for arbitrary configuration, it should be used only for submodules properties. Plus, arbitrary git configuration should not be distributed with the repository, and .gitmodules might be a possible "vector" for that. The series tries to alleviate both these issues by moving the 'config_from_gitmodules' function from config.[ch] to submodule-config.c and making it private. This should discourage future code from using the function with arbitrary config callbacks which might turn .gitmodules into a mechanism to load arbitrary configuration stored in the repository. Backward compatibility exceptions to the rules above are handled by ad-hoc helpers. Finally (in patch 6) some duplication is removed by using 'config_from_gitmodules' to load the submodules configuration in 'repo_read_gitmodules'. Changes since v1: * Remove an extra space before an arrow operator in patch 2 * Fix a typo in the commit message of patch 3: s/fetchobjs/fetchjobs * Add a note in the commit message of patch 6 about checking the worktree before loading .gitmodules * Drop patch 7, it was meant as a cleanup but resulted in parsing the .gitmodules file twice The series has been rebased on commit ed843436d ("First batch for 2.19 cycle", 2018-06-25) , and the test suite passes after each commit. Thanks to Brandon Williams and Stefan Beller for the input. Ciao, Antonio Antonio Ospite (6): config: move config_from_gitmodules to submodule-config.c submodule-config: add helper function to get 'fetch' config from .gitmodules submodule-config: add helper to get 'update-clone' config from .gitmodules submodule-config: make 'config_from_gitmodules' private submodule-config: pass repository as argument to config_from_gitmodules submodule-config: reuse config_from_gitmodules in repo_read_gitmodules builtin/fetch.c | 15 +------- builtin/submodule--helper.c | 8 ++-- config.c | 17 --------- config.h | 10 ----- submodule-config.c | 75 +++++++++++++++++++++++++++++++------ submodule-config.h | 12 ++++++ 6 files changed, 80 insertions(+), 57 deletions(-) -- Antonio Ospite https://ao2.it https://twitter.com/ao2it A: Because it messes up the order in which people normally read text. See http://en.wikipedia.org/wiki/Posting_style Q: Why is top-posting such a bad thing?