svn调用脚本(-)-创新互联
#!/usr/bin/ptyhon #coding:utf-8 class SvnCmd(object): #初始化属性,svnpath 为svn的全路径。 def __init__(self,svnpath,tagname = 'default'): import commands import time self.svnpath = svnpath self.tagname = tagname self.time = str(time.asctime( time.localtime(time.time()))) #svn状态方法 def svnst(self): import os import commands os.chdir(self.svnpath) status,r = commands.getstatusoutput('/usr/bin/svn st')[0],commands.getstatusoutput('/usr/bin/svn st')[1] return status,r #svn预提交方法 def svnpreci(self): import os import commands os.chdir(self.svnpath) commands.getoutput('''/usr/bin/svn st|grep -e '?' | awk '{print $2}'|xargs svn add''') commands.getoutput('''/usr/bin/svn st|grep -e '!' | awk '{print $2}'|xargs svn delete''') status,r = commands.getstatusoutput('/usr/bin/svn st')[0],commands.getstatusoutput('/usr/bin/svn st')[1] return status,r #svn提交 def svnci(self): import os import commands s.chdir(self.svnpath) cmd_svnci = '''/usr/bin/svn st|grep -e 'M' -e 'A' -e 'D'|/bin/awk '{print \$2}'|xargs svn ci -m "svn ''' + self.time + '_' + self.tagname + '"' print cmd_svnci commands.getoutput(cmd_svnci) #status,r = commands.getstatusoutput('/usr/bin/svn st')[0],commands.getstatusoutput('/usr/bin/svn st')[1] result = commands.getstatusoutput('/usr/bin/svn st') status,r = result[0],result[1] return status,r #svn更新 def svnupdate(self): import os import commands os.chdir(self.svnpath) #status,r = commands.getstatusoutput('/usr/bin/svn update')[0],commands.getstatusoutput('/usr/bin/svn update')[1] result = commands.getstatusoutput('/usr/bin/svn update') status,r = result[0],result[1] return status,r #svn版本号 def svnrevision(self): import os import commands os.chdir(self.svnpath) #status,r = commands.getstatusoutput('/usr/bin/svn info')[0], commands.getstatusoutput('/usr/bin/svn info')[1].split('\n')[6] result = commands.getstatusoutput('/usr/bin/svn info') status,r = result[0],result[1].split('\n')[6] return status,r #svn更新时间 def svnupdatetime(self): import os import commands os.chdir(self.svnpath) #status,r = commands.getstatusoutput('/usr/bin/svn info')[0], commands.getstatusoutput('/usr/bin/svn info')[1].split('\n')[-2] result = commands.getstatusoutput('/usr/bin/svn info') status,r = result[0],result[1].split('\n')[-2] return status,r #svn快速回退上一个版本,整个版本回顾,不是临时回滚 def svnrollback(self): import os import commands lately_reversion = int(self.svnrevision()[1].split(': ')[1]) last_reversion = int(lately_reversion) - 1 os.chdir(self.svnpath) rollcmd = '/usr/bin/svn merge -r ' + str(lately_reversion) + ':' + str(last_reversion) + ' .' print rollcmd result = commands.getstatusoutput(rollcmd) status,r = result[0],result[1] return status,r
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、雅安服务器托管、营销软件、网站建设、陆良网站维护、网站推广。标题名称:svn调用脚本(-)-创新互联
URL分享:http://myzitong.com/article/ddecii.html