chiark / gitweb /
When reading a config value, pick the last value, not the first
authorKarl Wiberg <kha@treskal.com>
Mon, 24 Aug 2009 08:28:33 +0000 (10:28 +0200)
committerKarl Wiberg <kha@treskal.com>
Mon, 24 Aug 2009 08:28:33 +0000 (10:28 +0200)
When reading the config values, we save all values for a given key in
a list, in the order we see them. Then, when asked for one value, we
used to return the _first_ value in the list. But the correct thing to
do in order to allow local configs (like the repository's .git/config)
to override global configs (like ~/.gitconfig) is to return the _last_
value.

Signed-off-by: Karl Wiberg <kha@treskal.com>
stgit/config.py

index 6f84b10d80b468fe537ddcf19026a98e5e4e8210..bfb117df044d291984ddee2e1ab867d27eea5fe0 100644 (file)
@@ -57,7 +57,7 @@ class GitConfig:
         self.load()
         if name not in self.__cache:
             self.__cache[name] = [self.__defaults.get(name, None)]
-        return self.__cache[name][0]
+        return self.__cache[name][-1]
 
     def getall(self, name):
         self.load()