`
dixian
  • 浏览: 15733 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

SVN源码同步到CVS

阅读更多

svn2cvs.py

#!/usr/bin/env python

import os, sys, cn.dixian.checkoutsvn as checkoutsvn, cn.dixian.checkoutcvs as checkoutcvs

tags = 'all'
if len(sys.argv) < 2:
    tags = 'all'
else :
    tags = sys.argv[1]

checkoutcvs.cocvs(tags)
checkoutsvn.cosvn(tags)

os.chdir('/var/opt/payCVS/')
#os.system('rsync -azvptCH --delete /var/opt/paySVN/* ./ > /var/opt/log.dat')
os.system('rsync -azvptCH /var/opt/paySVN/* ./ > /var/opt/log.dat')

checkoutcvs.commit(tags)


// ----------------------------------------------------------------------------------------------------

  

 

cn/dixian/checkoutsvn.py
#! /usr/bin/env python
#coding=utf-8

 

import os

def cosvn(tags):
    os.chdir('/var/opt/paySVN')

    if tags == 'paymanage':
        os.system('rm -rf paymanage')
        os.system('svn co --username dx --password dx1234 http://192.168.1.xxx:8000/svn/paymanage')
    elif tags == 'payment':
        os.system('rm -rf payment')
        src = 'svn co --username dx --password dx1234 http://192.168.1.xxx:8000/svn/pay/aaaaa'
        payCmd = '%s/payment payment/payment' % src
        os.system(payCmd)
        ejbCmd = '%s/paymentEJB payment/paymentEJB' % src
        os.system(ejbCmd)
        webCmd = '%s/paymentWeb payment/paymentWeb' % src
        os.system(webCmd)
    else :
        os.system('rm -rf *')
        os.system('svn co --username dx --password dx1234 http://192.168.1.xxx:8000/svn/paymanage')
        src = 'svn co --username dx --password dx1234 http://192.168.1.xxx:8000/svn/pay/aaaaa'
        payCmd = '%s/payment payment/payment' % src
        os.system(payCmd)
        ejbCmd = '%s/paymentEJB payment/paymentEJB' % src
        os.system(ejbCmd)
        webCmd = '%s/paymentWeb payment/paymentWeb' % src
        os.system(webCmd)

  
// ----------------------------------------------------------------------------------------------------  
  

 

cn/dixian/checkoutcvs.py
#! /usr/bin/env python
#coding=utf-8

 

import os, datetime

def cocvs(tags):
    os.chdir('/var/opt/payCVS/')

    if tags == 'paymanage':
        os.system('rm -rf paymanage')
        if not os.path.exists('/var/opt/payCVS/paymanage') : os.mkdir('/var/opt/payCVS/paymanage')
        os.system('cvs -d :pserver:dx@192.168.1.yyy:/SourceCode update -CPd paymanage')
    elif tags == 'payment':
        os.system('rm -rf payment')
        if not os.path.exists('/var/opt/payCVS/payment') : os.mkdir('/var/opt/payCVS/payment')
        os.system('cvs -d :pserver:dx@192.168.1.yyy:/SourceCode update -CPd payment')
    else:
        os.system('rm -rf *')
        if not os.path.exists('/var/opt/payCVS/paymanage') : os.mkdir('/var/opt/payCVS/paymanage')
        if not os.path.exists('/var/opt/payCVS/payment') : os.mkdir('/var/opt/payCVS/payment')
        os.system('cvs -d :pserver:dx@192.168.1.yyy:/SourceCode update -CPd paymanage')
        os.system('cvs -d :pserver:dx@192.168.1.yyy:/SourceCode update -CPd payment')

def commit(tags):
    os.chdir('/var/opt/payCVS/')
    t = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

    if tags == 'paymanage':
        paymanageCmd = "cvs -d :pserver:dx@192.168.1.yyy:/SourceCode commit -m '%s' paymanage" % t
        os.system(paymanageCmd)

    elif tags == 'payment':
        paymentCmd = "cvs -d :pserver:dx@192.168.1.yyy:/SourceCode commit -m '%s' payment" % t
        os.system(paymentCmd)

    else :
        paymanageCmd = "cvs -d :pserver:dx@192.168.1.yyy:/SourceCode commit -m '%s' paymanage" % t
        os.system(paymanageCmd)
        paymentCmd = "cvs -d :pserver:dx@192.168.1.yyy:/SourceCode commit -m '%s' payment" % t
        os.system(paymentCmd)

 

分享到:
评论

相关推荐

    SVN and CVS

    标题 "SVN和CVS" 涉及到的是两种版本控制系统——Subversion(SVN)和 Concurrent Versions System(CVS)。在IT行业中,版本控制系统是开发者用来管理代码更改、协同工作的重要工具。 1. **Subversion (SVN)**: ...

    SVN部署项目

    它允许团队成员在不同的位置工作,并将更改同步到中央存储库,确保代码的一致性和完整性。 描述中提到的“博文链接:https://ewf-momo.iteye.com/blog/1701302”是一个在线博客文章,虽然具体内容未给出,但通常会...

    在Eclipse下使用SVN-CC-GIT-VSS-CVS代码管理工具最终修订版详细说明书

    在IT行业中,代码管理是软件开发过程中的关键环节,它确保了团队成员间代码的...通过阅读《在Eclipse下使用SVN-CC-GIT-VSS-CVS代码管理工具说明书.pdf》文档,可以获得更详细的步骤和技巧,更好地掌握这些工具的使用。

    svn_eclipse.rar

    4. 使用Subclipse:现在,你可以右键点击项目,在弹出菜单中看到与SVN相关的操作,如“Share Project”来将项目添加到SVN仓库,或者“Team”菜单下的其他选项进行版本控制操作。 Subclipse 提供了以下主要功能: -...

    SVN培训教材 SVN培训教材

    - **工作副本(WorkSpace)**:每个开发者本地的工作区域,从配置库检出源码,在这里进行编辑和测试,然后将更改提交回配置库。 4. **SVN的工作模式**: - **复制-修改-合并**:默认工作模式,允许并行开发,最后...

    SlikSVN

    对于希望深入了解SlikSVN的开发者,可以从提供的源码中学习Subversion客户端如何实现,以及如何在Windows平台上封装和调用Subversion的API。 总之,SlikSVN是Windows用户方便地使用Subversion的利器,通过命令行或...

    SVN服务器VS2005客户端part2

    因此,在几年前,许多核心 CVS 开发人员认为,已经到了利用他们多年来使用 CVS 时学到的经验和教训、从头开始创建新一代开放源码存储库的时机。在 2004 年年初,他们的努力结出了丰硕的果实,那就是 Subversion 1.0...

    SVN服务器与VS2005客户端par1

    因此,在几年前,许多核心 CVS 开发人员认为,已经到了利用他们多年来使用 CVS 时学到的经验和教训、从头开始创建新一代开放源码存储库的时机。在 2004 年年初,他们的努力结出了丰硕的果实,那就是 Subversion 1.0...

    svn配置实用手册-中文、英文

    相对于CVS的简陋,SVN显得非常的完备,是一个经过深思熟虑的产品,是新一代开源项目的代表。 代码管理并不单纯就是简单的代码管理,而是整个项目中的一部分,希望大家能够受益匪浅,我们共同进步

    国内外优秀的源码网站.pdf

    9. **SourceForge** 和 **GitLab**:这两个都是全球知名的开源项目托管平台,采用不同的版本控制系统(CVS 和 SVN),提供大量的开源项目源码。 10. **开源中国**(OSChina):作为国内开源领域的领先平台,它同步...

    Ubuntu10.04下编译Android源码全过程.pdf

    3. **同步项目**:使用 `repo sync` 命令同步所有项目到本地。 ```bash repo sync ``` #### 二、源码编译 完成源代码的获取后,下一步就是进行编译。然而,在编译过程中可能会遇到一些依赖问题。 **解决编译...

    GIT使用手册

    #### 五、从CVS和SVN迁移到Git **CVS迁移到Git:** - **导出CVS历史记录:** 使用cvs2svn工具将CVS的历史记录转换为SVN格式。 - **导入到Git:** 将转换后的SVN仓库导入到Git中。 **SVN迁移到Git:** - **导出SVN...

    linux-0.11.zip

    虽然Linux 0.11时期还没有广泛使用Git这样的版本控制工具,但了解早期的版本控制方法(如CVS或SVN)对于理解源码的历史演变也非常重要。 10. **社区开发模式**: Linux 0.11源码的开放性和社区驱动的开发模式为...

    编译Android源码全过程

    与传统的集中式版本控制系统如Subversion(SVN)、CVS等不同,Git的特点在于每个工作目录都包含一个完整的仓库副本,支持离线工作和本地提交。 ##### 安装Git 在Ubuntu 10.04系统中安装Git非常简便,可以通过包...

    .NET c# sql 2005 网上购物系统源码和论文

    10. **版本控制**:作为09年的毕业设计,项目可能使用了当时的版本控制系统,如SVN或CVS,用于团队协作和版本管理。 通过这个项目,开发者不仅可以掌握.NET开发技能,还能深入理解电子商务系统的运作原理,对于理解...

    subclipse使用指南

    - **检出到工作空间中的项目:** 如果选择 `Check out as a project in the workspace`,你需要指定 `Project Name`,然后点击 `Finish`,代码将直接检出到指定的项目中,这种方式仅简单地将 SVN 库上的源码检出。...

Global site tag (gtag.js) - Google Analytics