Changeset 3203

Show
Ignore:
Timestamp:
02/09/08 05:15:12 (10 months ago)
Author:
hvr
Message:

GitPlugin: minor cleanups, and fixed synchronization issue with CachedRepository wrapping

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • gitplugin/0.11/gitplugin/git_fs.py

    r3202 r3203  
    218218                return rc 
    219219 
     220        def clear(self, youngest_rev=None): 
     221                self.sync() 
     222 
    220223        def sync(self, rev_callback=None): 
    221224                if rev_callback: 
     
    231234 
    232235class GitNode(Node): 
    233         def __init__(self, git, path, rev, tree_ls_info=None): 
     236        def __init__(self, git, path, rev, ls_tree_info=None): 
    234237                self.git = git 
    235238                self.sha = None 
     
    240243                p = path.strip('/') 
    241244                if p != "": 
    242                         if tree_ls_info == None or tree_ls_info == "": 
    243                                 tree_ls_info = git.tree_ls(rev, p) 
    244                                 if tree_ls_info != []: 
    245                                         [tree_ls_info] = tree_ls_info 
     245                        if ls_tree_info == None or ls_tree_info == "": 
     246                                ls_tree_info = git.ls_tree(rev, p) 
     247                                if ls_tree_info != []: 
     248                                        [ls_tree_info] = ls_tree_info 
    246249                                else: 
    247                                         tree_ls_info = None 
    248  
    249                         if tree_ls_info != None: 
    250                                 (self.perm, k, self.sha, fn) = tree_ls_info 
     250                                        ls_tree_info = None 
     251 
     252                        if ls_tree_info != None: 
     253                                (self.perm, k, self.sha, fn) = ls_tree_info 
    251254                        else: 
    252255                                k = 'blob' 
     
    295298                p = self.path.strip('/') 
    296299                if p != '': p = p + '/' 
    297                 for e in self.git.tree_ls(self.rev, p): 
     300                for e in self.git.ls_tree(self.rev, p): 
    298301                        yield GitNode(self.git, e[3], self.rev, e) 
    299302 
  • gitplugin/0.11/gitplugin/PyGIT.py

    r3202 r3203  
    220220 
    221221        # should never be reached if db is consistent 
    222         raise GitError 
     222        raise GitError("internal inconsistency detected") 
    223223 
    224224    def hist_next_revision(self, sha): 
     
    287287        return result 
    288288 
    289     def tree_ls(self, rev, path=""): 
     289    def ls_tree(self, rev, path=""): 
    290290        rev = str(rev) # paranoia 
    291291        if path.startswith('/'): 
     
    326326 
    327327    def get_obj_size(self, sha): 
    328         return int(self._git_call("cat-file", ["-s", str(sha)]).strip()) 
     328        sha = str(sha) 
     329        try: 
     330            return int(self._git_call("cat-file", ["-s", sha]).strip()) 
     331        except ValueError: 
     332            raise GitErrorSha("object '%s' not found" % sha) 
    329333 
    330334    def children(self, sha): 
     
    365369            return [] 
    366370 
    367     def history(self, sha, path, limit=None, skip=0): 
     371    def history(self, sha, path, limit=None): 
    368372        if limit is None: 
    369373            limit = -1 
     
    371375                                    ["--max-count=%d" % limit, 
    372376                                     str(sha), "--", path]).readlines(): 
    373             if(skip > 0): 
    374                 skip = skip - 1 
    375                 continue 
    376377            yield rev.strip() 
    377378 
     
    453454 
    454455    print "[%s]" % g.head() 
    455     print g.tree_ls(g.head()) 
     456    print g.ls_tree(g.head()) 
    456457    print "--------------" 
    457458    print g.read_commit(g.head())