提交 183b8ef8 编写于 作者: H Han-Wen Nienhuys

store p4 user cache in home directory.

Signed-off-by: NHan-Wen Nienhuys <hanwen@google.com>
上级 9320da8d
...@@ -819,6 +819,9 @@ class P4Sync(Command): ...@@ -819,6 +819,9 @@ class P4Sync(Command):
print ("Tag %s does not match with change %s: file count is different." print ("Tag %s does not match with change %s: file count is different."
% (labelDetails["label"], change)) % (labelDetails["label"], change))
def getUserCacheFilename(self):
return os.environ["HOME"] + "/.gitp4-usercache.txt")
def getUserMapFromPerforceServer(self): def getUserMapFromPerforceServer(self):
if self.userMapFromPerforceServer: if self.userMapFromPerforceServer:
return return
...@@ -829,17 +832,19 @@ class P4Sync(Command): ...@@ -829,17 +832,19 @@ class P4Sync(Command):
continue continue
self.users[output["User"]] = output["FullName"] + " <" + output["Email"] + ">" self.users[output["User"]] = output["FullName"] + " <" + output["Email"] + ">"
cache = open(self.gitdir + "/p4-usercache.txt", "wb")
for user in self.users.keys(): s = ''
cache.write("%s\t%s\n" % (user, self.users[user])) for (key, val) in self.users.items():
cache.close(); s += "%s\t%s\n" % (key, val)
open(self.getUserCacheFilename(), "wb").write(s)
self.userMapFromPerforceServer = True self.userMapFromPerforceServer = True
def loadUserMapFromCache(self): def loadUserMapFromCache(self):
self.users = {} self.users = {}
self.userMapFromPerforceServer = False self.userMapFromPerforceServer = False
try: try:
cache = open(self.gitdir + "/p4-usercache.txt", "rb") cache = open(self.getUserCacheFilename(), "rb")
lines = cache.readlines() lines = cache.readlines()
cache.close() cache.close()
for line in lines: for line in lines:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册