Mercurial > hg
changeset 11965:77f1f206e135 stable
mq: don't inherit default and default-push paths with --mq (issue2333)
Configuration from the outer repo is inherited to the patches repo when --mq is
used.
In case the patches repo only has paths.default configured but the outer repo
has paths.default-push then the inherited default-push will win. Very
confusing.
Inheriting the default paths is however wrong in all sane cases, so now we
explicitly remove them.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Wed, 18 Aug 2010 02:43:45 +0200 |
parents | df95b31bbdd7 |
children | fca15617721c d2796a3cb816 218bd2a056f5 |
files | hgext/mq.py mercurial/ui.py |
diffstat | 2 files changed, 9 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/mq.py Thu Aug 19 10:59:37 2010 +0200 +++ b/hgext/mq.py Wed Aug 18 02:43:45 2010 +0200 @@ -1487,8 +1487,11 @@ return True def qrepo(self, create=False): + ui = self.ui.copy() + ui.setconfig('paths', 'default', '', overlay=False) + ui.setconfig('paths', 'default-push', '', overlay=False) if create or os.path.isdir(self.join(".hg")): - return hg.repository(self.ui, path=self.path, create=create) + return hg.repository(ui, path=self.path, create=create) def restore(self, repo, rev, delete=None, qupdate=None): desc = repo[rev].description().strip()
--- a/mercurial/ui.py Thu Aug 19 10:59:37 2010 +0200 +++ b/mercurial/ui.py Wed Aug 18 02:43:45 2010 +0200 @@ -121,9 +121,11 @@ self._trustusers.update(self.configlist('trusted', 'users')) self._trustgroups.update(self.configlist('trusted', 'groups')) - def setconfig(self, section, name, value): - for cfg in (self._ocfg, self._tcfg, self._ucfg): - cfg.set(section, name, value) + def setconfig(self, section, name, value, overlay=True): + if overlay: + self._ocfg.set(section, name, value) + self._tcfg.set(section, name, value) + self._ucfg.set(section, name, value) self.fixconfig() def _data(self, untrusted):