git-gui: remove duplicate entries from .gitconfig's gui.recentrepo
commit2c1b06dff9a2b953c3692bacca6eeaa78d33fd01
authorPhilip Oakley <philipoakley@iee.org>
Mon, 14 Dec 2015 10:37:02 +0000 (14 10:37 +0000)
committerPhilip Oakley <philipoakley@iee.org>
Fri, 20 Jan 2017 20:55:01 +0000 (20 20:55 +0000)
tree8be943ba523dc915ccfeb7a85cf8dd75257a6ab7
parentccc985126f23ff5d9ac610cb820bca48405ff5ef
git-gui: remove duplicate entries from .gitconfig's gui.recentrepo

The git gui's recent repo list may become contaminated with duplicate
entries. The git gui would barf when attempting to remove one entry.
Remove them all - there is no option within 'git config' to selectively
remove one of the entries.

This issue was reported on the 'Git User' list
(https://groups.google.com/forum/#!topic/git-users/msev4KsQGFc,
Warning: gui.recentrepo has multiply values while executing).

And also by zosrothko as a Git-for-Windows issue
https://github.com/git-for-windows/git/issues/1014.

On startup the gui checks that entries in the recentrepo list are still
valid repos and deletes thoses that are not. If duplicate entries are
present the 'git config --unset' will barf and this prevents the gui
from starting.

Subsequent patches fix other parts of recentrepo logic used for syncing
internal lists with the external .gitconfig.

Reported-by: Alexey Astakhov <asstv7@gmail.com>
Signed-off-by: Philip Oakley <philipoakley@iee.org>
lib/choose_repository.tcl