• SVN签出部分文件


    需要解决的问题
    如下图所示,svn项目的trunk目录下有很多的文件夹。由于一个组或者部门共享一个trunk,建立代码结构之初,没有考虑按业务划分,或者业务之间有关联,导致这些文件夹所代表的代码可能不是同时属于一个业务,或者一个业务相关的代码分散在不同的文件夹之中。
    比如:文件夹Floder_[1,2,3,4]属于同一个业务Prj_A,Floder_[5,6,7]属于业务Prj_B,而Floder_[1-7]在trunk下是同等层次的目录。当前我只想查看Prj_A的相关代码,如果我把trunk都签出,固然是一种解决方法,但考虑到根目录trunk的大小,不想同时把Prj_B和其他业务的代码同时签出。所以我需要一个方法从一个大trunk目录下有区别性的签出部分代码,这些签出的代码组成本地的一个版本库,这些代码受该版本库统一管理。

    1

    解决方法
    在明确问题之后,用下面的方法签出代码来管理。以需要同时签出“svn://www.oksvn.com/oweb/cgi”和“svn://www.oksvn.com/oweb/cpp”为例。
    第一步:我先签出“svn://www.oksvn.com/oweb”这个大的目录,请注意下图“Checkout Depth”选项的值。我选择的是“Only this item”,也就是说我只签出该文件夹,但不签出该文件夹下的任何子文件或者子文件夹。
    这里顺带说下“Checkout Depth”各选项值所代表的含义:
    Fully recursive   :签出该文件夹下全部的元素;
    Immediate children,including folders:把当前文件夹下的子文件及子文件夹都签出,但签出的子文件夹是空的,子文件夹下的文件是不会签出的;
    Only this item    :只把当前文件夹签出,其中为空,不包含任何子文件及子文件夹;
    Only file children:只把当前文件夹下的直接子文件签出,其下的子文件夹(及其子文件)不签出;

    2
    3

    第二步:在签出的本地版本库文件中,使用SVN客户端的“Repo-brower”功能浏览版本库,然后在左侧的目录树中找到“cgi”文件夹,然后在其上点击右键,弹出菜单栏后,在菜单栏中使用“Checkout”功能。
    4
    5
    6 如上图所示,我们已经把“cgi”这个文件夹单独签出到本地版本库。再使用同样的方法我们把“cpp”签出。

    第三步:自此“cgi”和“cpp”两个文件夹就放在一个版本库中了,我们在当前的版本库中,使用“Update”或者“Commit”等命令可以同时对当前的两个文件夹起效。
    8
  • 相关阅读:
    常用Linux命令的基本使用(不定时补充)
    利用油猴插件实现全网VIP视频免费看
    电脑开机显示被调用的对象已与其他客户端断开连接
    常见DOS命令
    Text函数对转换日期,调整数值,条件判断的应用技巧
    Excel常用函数
    Power BI(天猫双十一美妆销售数据分析)
    Power BI新建列与关系函数(三)
    Python_Bug
    Docker 初窥(有一大坑,注意根目录磁盘爆满问题,易导致开机黑屏)
  • 原文地址:https://www.cnblogs.com/motadou/p/1915353.html
Copyright © 2020-2023  润新知