如果一个测试站点要及时的从svn获取最新的文件,那么写一个定期更新程序是非常必要的,下面的代码Python的简单实现
svnupdate.py
import time,os,sys,svnconfig
dist=svnconfig.setting['dist']
os.chdir(svnconfig.setting['svn'])
def checkout():
svnconfig.setting['dist']=dist+time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime())
cmd='svn export %(url)s %(dist)s --username %(user)s --password %(pwd)s'%svnconfig.setting
print "execute %s"%cmd
#print os.popen(cmd).read()
return os.system(cmd)
while True:
ret=checkout()
if(ret==0):
print 'check out success'
else:
print 'check out fail'
time.sleep(svnconfig.setting['interval'])
svnconfig.py
setting={
'svn':'C:/Program Files/Subversion/bin/',#svn的程序所在路径
'url':'http://www.xxx.com/svn/project/trunk',#svn地址
'user':'xxx,#用户名
'pwd':'xxx',#密码
'dist':'D:/svn/',#目标地址
'interval':15 #更新时间
}
可能是装了多个svn的缘故,直接用system('svn xx')命令执行失败,所以就先chdir到svn的目录下面,然后在执行svn命令
svn也有一个Python程序包,也可以直接使用,没有具体使用过。
svn以及python包的地址:
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
http://blog.csdn.net/foyuan/article/details/1718615
上次在拉闷用ruby写,最终写的也蛮简便,有空在试试python
分享到:
相关推荐
svn通过仓库(Repository)存储项目的所有版本,而用户通过客户端(如TortoiseSVN、SmartSVN等)连接到仓库进行操作,如提交、更新、查看历史等。为了保障项目安全,svn支持设置用户身份验证,即用户名和密码的配置...
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。它允许团队成员协同工作,记录每次更改,以便于回滚错误、比较不同版本,并管理多个开发分支。下面我们将深入探讨SVN的创建和配置...
在Eclipse中集成SVN客户端插件,可以方便地进行版本控制操作,如代码的提交、更新、合并等。 标题"svn 64 用于eclipse"指的是将64位版本的SVN客户端与Eclipse IDE整合使用。64位版本通常适用于处理大量数据或需要更...
- **方法**: 使用Python脚本来监控指定的SVN目录,并定期将其中的文件备份到另一个位置。 ##### 2. 技术选型 - **语言选择**: Python,因其简洁易读且功能强大。 - **库支持**: - `hashlib`: 用于计算文件的MD5...
- **工作副本(Working Copy)**:开发者在本地计算机上的项目副本,包含了从版本库检出的所有文件和目录。 - **提交(Commit)**:将本地工作副本的更改保存到版本库的操作。 - **更新(Update)**:将版本库的最新...
3. **安装新客户端**:例如,提供的文件列表中的"python-2.7a1.msi"可能是Python的一个早期版本,而"change-svn-wc-format.rar"可能包含用于转换工作副本格式的工具。在大多数情况下,只需安装新客户端,系统会自动...
要确保插件始终与最新的SVN版本兼容,记得定期检查Eclipse Marketplace中的更新。 总结,安装Eclipse的SVN插件,如Subversive,是进行版本控制的关键步骤。通过集成SVN,开发者可以在Eclipse环境中方便地进行版本...
2. **自动获取代码**:利用脚本(通常为bash、Python或Windows批处理脚本)定期检查 SVN 仓库的更新,当有新的提交时,自动将代码拉取到本地。这一步通常被称为“拉取”或“更新”,它确保开发人员始终拥有最新的源...
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。在IT行业中,配置管理是至关重要的,它确保了软件开发过程中的版本控制、代码库的备份和恢复,以及团队间的协作效率。SVN数据库的...
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。在软件开发过程中,SVN有...不过,记得定期检查更新,确保使用的插件版本与 Eclipse 和 SVN 服务器兼容,以获得最佳的性能和稳定性。
工具会自动尝试从该URL获取SVN信息,并进行恢复操作。 **工作原理:** Svn-Tool的工作流程大致分为以下几步: 1. **扫描与发现**:工具首先会尝试识别出URL中可能存在的SVN仓库路径。 2. **信息收集**:一旦找到...
定期更新以修复已知问题,添加新功能,并保持与Scintilla和SVN最新版本的兼容。 通过以上步骤,你可以构建一个功能丰富的"SVN日志插件",为基于Scintilla的编辑器或IDE带来强大的版本控制支持,提升开发效率。
在Linux系统中,特别是CENTOS 7环境下,安装和配置版本控制工具是非常重要的,特别是对于开发者来说。...请确保遵循最佳实践,定期备份,以及保持你的RabbitVCS和SVN服务更新,以确保数据的安全性和系统的稳定性。
svnpoller库是为了解决与SVN相关的任务而设计的,如定期检查更新、触发自动化脚本或发送通知等。对于那些经常与SVN仓库打交道的开发者来说,这个库是一个强大的助手。 首先,让我们了解一下Subversion(SVN)。SVN...
- **Checkout**:从SVN仓库获取代码到本地工作区。 - **Commit**:将本地修改的代码提交到SVN仓库。 - **Update**:同步仓库中的最新代码到本地。 - **Compare**:查看本地文件与仓库版本的差异。 - **Merge**...
将SVN与Apache集成,可以实现通过Web界面进行代码浏览、提交和更新等操作,极大地提高了团队协作效率。 【SVN简介】 SVN的核心功能是跟踪和管理源代码的变更历史,允许开发人员在不同的时间点检查项目状态,回滚到...
SVN备份脚本的主要目的是定期备份SVN仓库,防止数据丢失。这在团队协作中至关重要,因为代码和其他项目文件的更改频繁,一旦发生意外,如硬件故障或数据损坏,备份脚本能帮助迅速恢复到先前的状态,避免工作成果的...
Python是一种广泛使用的高级编程语言,尤其在...同时,定期更新Python和PyCharm到最新版本,以获取最新的特性和安全修复。通过不断学习和实践,开发者可以充分利用Python和PyCharm的强大功能,提高编程效率和代码质量。
2. 定期更新Trac和Apache到最新版本,保持系统的安全性。 3. 监控Trac的日志文件,排查可能出现的问题。 通过以上步骤,你就成功搭建了一个基于Trac、Apache和Subversion的bug跟踪系统。这个系统不仅方便了bug管理...
当这些文件积累过多时,可能会占用大量磁盘空间,因此需要定期删除过期的log文件。本文将通过实例解析如何使用Python来实现这一功能。 首先,我们可以使用`os.walk()`函数来遍历指定目录及其子目录下的所有文件。`...