如何使用pysvn将文件添加为svn:external

时间:2010-09-21 15:33:43

标签: svn-externals pysvn

我正在使用pysvn,我想将一个文件夹存储为svn:external。 任何想法如何在pysvn中做到这一点?

1 个答案:

答案 0 :(得分:1)

假设您在D:\ myWorkingCopy中有一个工作副本,并且您希望映射一些要在MYPROJ \ SOMEDIR中签出的外部svn文件夹。下面的代码举例说明了这一点。

import pysvn

def setExternals(dir, externalValues):
    svnClient = pysvn.Client()
    externalsPropValue = '\n'.join(['%s %s' % (extVal[0], extVal[1]) for extVal in externalValues])
    svnClient.propset('svn:externals', externalsPropValue, dir)
    rev = svnClient.checkin(dir, 'Set externals')
    print str(rev)

if __name__ == '__main__':
    externalValues = [('^/OTHERPROJ1/DIRINPROJ1', 'DIRINPROJ1'),('^/OTHERPROJ1/DIRINPROJ1', 'DIRINPROJ2')] 
    setExternals(r'D:\myWorkingCopy\MYPROJ\SOMEDIR', externalValues)