While fixing that 'git remote rename X Y' does not rename the values for 'branch.*.pushRemote', it opened the possibility to more improvements in this area: - 'remote rename' did not accept single-letter abbreviations for 'branch.*.rebase' like 'pull --rebase' does - minor clean-ups the config callback - patch 5 will be replaced by/rebased on Matthew's work in 'config: allow user to know scope of config options', once 'config_scope_name' is available - gently handling the rename of 'remote.pushDefault' Bert Wesarg (7): pull --rebase/remote rename: document and honor single-letter abbreviations rebase types remote: clean-up by returning early to avoid one indentation remote: clean-up config callback remote rename: rename branch.<name>.pushRemote config values too [RFC] config: make `scope_name` global as `config_scope_name` config: provide access to the current line number remote rename: gently handle remote.pushDefault config Documentation/config/branch.txt | 7 +- Documentation/config/pull.txt | 7 +- Makefile | 1 + builtin/pull.c | 29 +----- builtin/remote.c | 168 +++++++++++++++++++++----------- config.c | 24 +++++ config.h | 2 + rebase.c | 24 +++++ rebase.h | 15 +++ t/helper/test-config.c | 18 +--- t/t1308-config-set.sh | 14 ++- t/t5505-remote.sh | 52 +++++++++- 12 files changed, 254 insertions(+), 107 deletions(-) create mode 100644 rebase.c create mode 100644 rebase.h -- 2.24.1.497.g9abd7b20b4.dirty