repository: Fix SetFullPath writing multiple entries
The new SetFullPath() RPC uses git.Config.Add() to write the path
into the gitconfig, which internally uses git config --add. What this
does is to amend the config entry to the gitconfig while keeping all old
entries, effectively turning the config entry into a multivar.
Fix this by invoking git-config(1) directly without the --add flag. To
guard against the case where the key already is a multivar, this also
adds the --replace-all flag such that we remove all multivars.
Changelog: fixed
Part of #1774 (closed)