コード例 #1
0
ファイル: vcs.py プロジェクト: cloudtopo/topo-builder
 def check(self, work_copy, address, user, password, log=None):
     baseVer = self.get_work_ver(work_copy, user, password, log)
     headVer = self.get_rep_ver(address, user, password, log)
                         
     if headVer == baseVer:
         FileUtil.log(log, work_copy + ": No SVN change found!")
         return False
         
     return True 
コード例 #2
0
ファイル: vcs.py プロジェクト: cloudtopo/topo-builder
 def get_rep_ver(self, rep, user, password, log=None):
     (headOutput,errno) = process.get_run_output("svn log -q -l 1 " + StrUtil.quote(rep) + self._get_svn_para(user, password))
     FileUtil.log(log, headOutput)
     
     if errno != 0:
         raise Exception("get version of " + rep + " error")
     
     #注意这地方要处理中英文版本,所以要识别GB码的‘版本’和‘ Revision’
     headVer = re.search("r([0-9]+) \|", headOutput).group(1)
     return headVer
コード例 #3
0
ファイル: vcs.py プロジェクト: cloudtopo/topo-builder
    def get_work_ver(self, work_copy, user, password, log=None):
        (baseOutput,errno) = process.get_run_output("svn info -r BASE " + StrUtil.quote(work_copy) + self._get_svn_para(user, password))
        FileUtil.log(log, baseOutput)
        if errno != 0:
            raise Exception("get version of " + work_copy + " error")

        if re.search("Last Changed Rev: ([0-9]+)", baseOutput) is None:
            baseVer = re.search("\xd7\xee\xba\xf3\xd0\xde\xb8\xc4\xb5\xc4\xb0\xe6\xb1\xbe: ([0-9]+)", baseOutput).group(1)
        else:
            baseVer = re.search("Last Changed Rev: ([0-9]+)", baseOutput).group(1)
            
        return baseVer