SVN 外部引用(svn:externals)处理相似系统的公用代码

时间:2022-03-15 11:00:37

一、创建外部引用

  我们常常遇到这样一个场景,我们有两个系统,两个系统用的是同一套框架。如果我们用两套程序

  去做,当我们修改这个公共的框架的时候,另外一个还是旧版本的,很容易造成混乱。

  SVN的外部用就是处理这种情况的。

  我们有一个系统A,一个系统B。我们将它们公用的文件提取出来,作为系统C,由独立一个SVN版本管理库。然后A和B系统分别引用C。这样,无论在A还是B系统上修改和获取,都能够同步到最新的C代码。

  设置外部引用目录的方式如下:

SVN 外部引用(svn:externals)处理相似系统的公用代码

SVN 外部引用(svn:externals)处理相似系统的公用代码

  这样就可以了,除了这样,项目所有的代码都会提交到主URL,除了这个“公用代码”目录会提交到你设定的外部引用的目录。

  要特别注意的是,主版本与公用版本的目录不能够重复,什么意思?

  假设主目录为A,A里面已经有个B目录。那么不能再创建B的引用目录。

  但是,如果B里面没有C目录,则可以创建C目录为外部引用目录。

二、获取代码

  获取代码的时候,如果公用代码的目录过多,那么就要频繁地设置外部引用,这个很头痛,有什么办法直接获取代码下来就能够连外部引用也一起获取下来呢?

  有的。

  获取代码的时候,不要使用SVN->CheckOut了。

  而是,直接,直接,直接在Visual Studio里面,打开->SVN项目。

  SVN 外部引用(svn:externals)处理相似系统的公用代码

  经过同事的测试,使用这种方式会自动获取到外部引用的代码,也会连SVN的配置都一齐获取下来,感谢权权同事。