最近winCVS更换了IP地址(从原先的X.X.X.X更换到了Y.Y.Y.Y),原先通过该服务器签出的部分项目,存在一些未提交的变更。
此时,如果在开发环境更新项目(UPDATE),会包错误(服务端IP地址变更了嘛)。在项目工程中,各目录下面都有
一个CVS目录其中保存了访问CVS服务器的一些信息,其中有Root文件,里面存放了CVS服务端的访问信息,比如:
:pserver:
[email protected]:/cvsServer,其中@之后为服务端的IP地址,此时只需要修改该IP地址为新的服务器地址即可。
由于项目工程中涉及到多个目录,每个目录中都有CVS目录和文件,采用python写个程序,从顶层目录开始进行遍历,
将Root文件中的服务器地址替换为新的地址就可以了。
'''
Created on 2012-1-27
@author: Administrator
'''
#coding=utf-8
import os
dir = "F:\\JavaProject\\FtpFileFind"
destCVS = ":pserver:
[email protected]:/CVS_Project"
def changeCVSIP():
for root, dirs, files in os.walk(dir, True, None, False):
if 'CVS' in root:
print("the root is: ", root)
files = os.listdir(root)
for f in files:
name = os.path.splitext(f)[0]
if (os.path.isfile(os.path.join(root,f)) == True) and ('Root' in name):
print('the file name is:', os.path.splitext(os.path.join(root,f))[0])
#删除文件
#os.remove(os.path.join(root,f))
#打开文件
rootf = open(os.path.join(root,f), 'w')
try:
rootf.write(destCVS)
finally:
rootf.close()
if __name__ == '__main__':
changeCVSIP()