SVN Management

本文分享了SVN管理过程中的经验,包括版本库创建、同步问题、备份与镜像恢复等,并提供了具体解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前段时间公司SA离职,主动申请了一部分工作是关于SVN维护的,新的SA来了,马上要交接,小小总结一下这段时间的SVN Management Experience。

NOTE:如何创建SVN 版本库就不赘述了, 不会Google。

以下是一些日创管理时遇到的issue 和 备份和镜像的恢复。
repo_local_path: file:///e:/svn/7thOnline

I Dairy Schedule
    1 sync with main server manaully
        svnsync sync repo_local_path

    NOTE:
           Issue 3:locked
                    C:\Documents and Settings\ntadmin>svnsync sync repo_local_path
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        Failed to get lock on destination repos, currently held by 'Utility01:c8d0ab56-e
                    4f5-7244-a8a6-ba639e98254e'
                        svnsync: Couldn't get lock on destination repos after 10 attempts

              Solution: unlock
                    svn propdel svn:sync-lock --revprop -r 0 repo_local_path

II: Recovery
    如果有几个main svn server 的镜像 一个镜像无法同步了,我们可以通过物理拷贝 其他正常镜像的相关文件 去恢复此镜像。 如果只有一个镜像,就不能通过这种方式恢复此镜像。(不得已使用)
   copy_svn.bat: (至于某仓库root path)
    mkdir dst
    copy db\current dst\

    mkdir dst\revprops
    copy db\revprops\0 dst\revprops
    copy db\revprops\46989 dst\revprops

    mkdir dst\revs
    copy db\revs\0 dst\revs
    copy db\revs\46989 dst\revs

    Dump / Load Steps:

     1 dump from the mian svn server or other mirror svn server  (Eg:from version A to version B )
     2 dos: go to repro root path
          D:\svn>
     3 D:\ svn> svnadmin load 7thOnline <d:\svn_backup\46988.dmp
     4 update 0 version file

    NOTE:
              Issue 1
                     D:\svn>svnadmin load 7thOnline <d:\svn_backup\46988.dmp
                        <<< Started new transaction, based on original revision 46988
                             * editing path : 2012Q2-GA5.4.1 GRI/JavaDev/cmm/data/ADDataParser.java ...
                        done.
                       
                        ------- Committed new rev 46998 (loaded from original rev 46988) >>>
                       
                        <<< Started new transaction, based on original revision 46989
                             * editing path : 2012Q2-GA5.4.1 GRI/JavaDev/cmm/applet/builder/OTBSheetBuil
                        der.java ... done.
                             * editing path : 2012Q2-GA5.4.1 GRI/JavaDev/cmm/data/CMMDataParser.java ...
                         done.
                             * adding path : 2012Q2-GA5.4.1 GRI/JavaDev/cmm/data/RatioCalculator.java ..
                        .svnadmin: File already exists: filesystem '7thOnline/db', transaction '46998-1'
                        , path '2012Q2-GA5.4.1 GRI/JavaDev/cmm/data/RatioCalculator.java'
                       
                Solution:
                        remove related version file
                        change 0 and current info to keep current version to be dump start version - 1 (here is 46987).

                Issue2:
                    C:\Documents and Settings\ntadmin>svnsync sync repo_local_path
                    svnsync: Revision being currently copied (47009), last merged revision (47008),
                    he destination without using svnsync?
           
               Solution:
                    update 0 version file
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值