很久之前搭了一个svn,因为公司的流程也不是很规范,然后设计、产品、android、ios的各种代码都在一个路径底下,自己也没有在意这些细节。但是产品经理有一天觉得这更新的东西太多了。所以想要分目录。
最先想到的是多个路径分开来,这个路径更新设计,那个路径更新产品。。。但是确认产品是想更新的地址不变,但是看到的内容不一样。每个用户对应自己权限所查看的目录。
因为没有弄过,所以只能借助搜索引擎,寻求答案。
最先看的一种方案:
每个用户都指定一个新的目录,把他要更新的内容的svn地址 添加到这个新的里面来,
1、 新建一个文件夹或者svn项目路径,然后在本地更新出来
2、 在新的svn目录里右击查看属性,切换到subversion。(如下图)
3、 点击properties -> new -> other (如下图)
4、property name选择svn:externals,并且在property value 列出他要更新的列表,勾选应用,点击ok。(如下图)
5、 设置好了之后,在这个目录更新代码,更新完后提交。
这样以后他只要记住这个地址,然后也只要在这个目录更新或者提交文件。然后其他用户只要循环上面的步骤即可。但是这个步骤实在太繁琐。我还要帮他们一个个人去设置,我表示我很懒。
于是寻求另外一种更简洁的方案。
然后发现了一种极其简单的方式,开放根目录所有用户权限,然后子目录限制权限。更新的时候就只会更新到他指定权限的目录内容。废话不多说,直接贴代码:
[groups] group1 = yang1,yang2 group2 = yang1 group3 = yang2 [/] @group1 = rw [/a] @group2 = rw * = [/b] @group3 = rw * = [/ab] @group1 = rw
所有的用户地址还是给根目录的地址,但是yang1只能更新下根目录下的a和ab目录,而yang2可以更新下b和ab目录。其他根据自己修改,是不是很简单~
已有0条评论