SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 8025|回复: 16

[推荐] IF.SVNAdmin

[复制链接]
发表于 2011-12-21 20:32:38 | 显示全部楼层 |阅读模式
在用SVN+Apache+LDAP的模式来管理权限,不方便的地方是没有图形化的界面来管理用户权限。我是将各个库的权限交由各使用单位的CMO自己去负责管理。这样就有近十个CMO账号,分别管理近十个authz权限文件。; k3 K% v. f& \( _
) B  F( b, `- A$ d( D( l
我既需要LDAP方式管理用户,这样方便用户访问SVN,不必多记忆一套密码;也需要passwd的用户,方便与其他系统集成,因为LDAP用户的密码定义为每3个月强制修改并且24个月内的不可相同或类似。
& E! i' V' b- f2 O" D/ D3 c& a5 H3 e
最近考察了两款工具:Repocafe和IF.SVNAdmin,Repocafe感觉麻烦一点,要装一个postgresql,我就没试。& X2 T6 |, b7 c
我试了IF.SVNAdmin的1.5.2、1.5.1和1.5版本,都有点问题,正向作者请教中……9 F/ M( D6 k2 J: J$ o: l7 u
http://www.insanefactory.com/if-svnadmin/2 w( D0 H( X8 K: W* M8 u0 ?
http://repocafe.cs.uu.nl/
& Q, F% _  E( v1 O2 w& K8 X" o4 j- Z% E/ h" B
不知有没相似需求、做过类似研究的童鞋分享一下经验?  P* J% R8 X! B7 ?4 v
发表于 2011-12-21 21:03:21 | 显示全部楼层
本帖最后由 qhy218 于 2011-12-21 21:14 编辑 ; ~1 x/ u, z9 d& K

9 X* K( d3 P; D" b8 N, f刚刚看了下,好像这软件还蛮不错的,年后用用看~~目前我们版本库的账户并没有使用LDAP,我们使用了一个独立的系统管理,采用自己开发的一个系统管理,包括权限管理、版本库管理、用户ACL控制、版本库访问日志管理等内容
2 S- l, O! k# P" `
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-12-21 21:16:40 | 显示全部楼层
本帖最后由 okala 于 2011-12-21 21:20 编辑 # M! v6 F( V/ V. W* J3 i
# F. b* d' u  O4 H$ F5 r
回复 qhy218 的帖子8 B% F+ l1 n( {
" M3 ]: Y. [- b% d3 @5 k
大牛啊!
- Z, H; x" v) W$ C* X4 V, |. S. }# A
我们的不是一个项目一个版本库,是一个版本库一个类,比如单相产品一类,三相产品一类,在线式一类,离线式一类。大概24个库,共占约117GB空间。其中有些是1.4.3的版本库,DB Format是2,有些是1.6.X的版本库,DB Format是4或5,准备晚一点再统一起来。& P8 V" |/ l9 ]6 V$ S4 v5 L( t
, g: E+ P; e/ I+ r" Q
那你们是用Parent父库-子库的方式来管理吗?! G; Y/ s3 b' C& P( g
; B. s. v# @: {5 H' y
你们的备份策略是如何做的呢?7 Q3 Y- }$ J; x$ X( x
我现在是用sync镜像到另一个挂载点,然后用磁带对镜像进行每周增量备份、每月全量备份
6 ^/ d' w, ]7 s4 K4 h% u% q7 ?, @/ D  u
如果不考虑与LDAP集成,我觉得可选的管理工具还是蛮多的。你们自己可以开发一个,好牛哦!
7 k/ W/ Q+ Y! T% c  Y& u. O! T( U- W3 G1 ~
大牛有没有玩过Merge?和External Source(好像是这样拼吧,外部引用)?感觉怎么样?
. N0 {' j( w. _+ `" t  t$ Q! a1 T3 C8 `+ b3 R! h
而且我觉得我们的LDAP用用户密码的管理应该要严于、高于Htpasswd方式,我们的LDAP强制每3个月就改密码,24个月内的密码不可以相似或重复,必需9个字符以上,必需有数字、小写字母、大写字母、特殊字符中的三种。
$ N9 F9 |7 w; R' T3 Q3 Y+ m  |. x8 c
回复 支持 反对

使用道具 举报

发表于 2011-12-21 21:23:58 | 显示全部楼层
okala 发表于 2011-12-21 21:16 9 {# t4 h7 ?. u2 F" Y! S5 |
回复 qhy218 的帖子
9 K: Y! h  }# c" D8 [: y, k8 Z6 K0 u, p# `  f9 r
大牛啊!
& R  M6 q; T3 [0 b
其实我不是大牛,我是吹牛吹大了,刚刚都把上面的话删了,没想到还被你看到了~~- A8 h: Y5 J& N
我们目前SVN管理并不是非常好,特别是什么东西该放到SVN上来,现在体系定义了连成果物都要放到项目库;1 T6 y' n  b/ z' d5 E+ d
* U0 A2 _( M5 j1 O& ~- |& h4 v+ M+ S
800个库里面500个是项目库,主要存放项目活动相关内容,另外300个主要为代码、硬件结构图纸等,整体容量很恐怖,目前有1800GB,大得我发愁,目前备份使用EMC Avamar Data Store每日全备,每月使用ADT磁带出库保险柜存储~~
* N4 J- ]) w: |4 W2 m% w
回复 支持 反对

使用道具 举报

发表于 2011-12-21 21:25:56 | 显示全部楼层
okala 发表于 2011-12-21 21:16
% i3 [" y" F4 {4 D回复 qhy218 的帖子# q4 W: o: [: k4 I/ c' e

1 m% j* O0 |6 a' c: ~5 X8 ]大牛啊!
. E7 _# ], h+ K
用户管理我使用mysql管理的,因为文件只有帐号和密码,补太方便,而且无法做其他应用,如ACL、与第三方库结合等~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-12-21 21:35:36 | 显示全部楼层
回复 qhy218 的帖子- E: x- n8 `1 m8 s  X1 X; [
2 P) f5 y6 g0 ^7 m% H& k
1800GB!还每日全备!如果用光纤硬盘阵列,成本够贵的吧~
% f; X8 S4 a3 _4 Y  d" l/ A: q( v& p# Y% \( t0 |! g
我这边规范里是写着让大家不要加日期为后缀名、没有版本变化的东西不要入库,但大家还是会把rar、zip、jpg、exe、avi等文件传上去,郁闷死了
. k: R5 V1 `3 h4 u% M5 L) L有一次有个家伙把14GB的资料分卷压缩传上去,被我例行检查时发现了,后来通过load/dump filter及时去掉了这部分资料& T$ t- b* r! `: q) d, W
4 y5 b" R- n! v# i3 W6 w) @
然后我想写pre-commit来限制上传的类型和单个文件大小,但是如果文件名包含空格就不起作用,调试过一阵子,请教过小光,后来不了了之了……
2 w2 P4 {! j- u
回复 支持 反对

使用道具 举报

发表于 2011-12-21 21:43:43 | 显示全部楼层
本帖最后由 qhy218 于 2011-12-21 21:46 编辑
+ V& f# ?9 H/ A' b# J
. E: Y& J, t) ?0 o; p4 ?, L  D回复 okala 的帖子7 v/ `' F3 C# X5 E
6 d0 \, p0 A3 K/ I
Avamar很智能的,他的全备是重复数据删除后的全备,等价于其他备份软件的增量备份,但是跟增量又有差别,他恢复不用集合历史的增量点;5 G9 T" ?  B8 K0 r: a& u! k) u
硬盘这块我明年确实想上一个好点的存储,目前考虑EMC VNX5300,自动化的分层存储(SSD+SAS+Near line SAS分层)以及虚拟化的应用能降低存储成本和提高磁盘利用率;) D5 K$ Y5 ~) |/ ?( L" J+ X! w

* {. t; b& |6 V1 D; z8 @版本库的管理是一个长期的过程,我们规定了代码库只放代码和一些设计文档,而其他的内容会被放入项目库、BOM库、共享库等不同的版本库中,你可以尝试增加一些脚本控制来拒绝一些文件的上传,如后缀名,或者文件大于100m等,你刚刚说的pre-commit对空格无效,应该是脚本问题,可以尝试咨询下坛子里的人嘛~~
7 C0 x6 o/ b2 n6 b9 H( Y! Z7 w; D$ m% i& H) M

0 D7 E) t- @$ S- e9 O' u/ s( c
) l) U( Q& W: z) q- B8 }( c8 K
回复 支持 反对

使用道具 举报

发表于 2011-12-22 10:30:03 | 显示全部楼层
要多向 2位前辈学习啊  D! M8 x8 S2 s) ]# ~" T
我们这边也马上就要上 SVN 了,也在为权限和整体构架发愁呢~
4 ~3 r7 M4 I, |8 \4 A' {9 P( E; o' J# {+ y6 L9 H* u  v
我们这边没有使用 authz权限文件的方式哇,而是使用 pre-comit HOOK 的方式,另外定义了一个 ini 配置文件的,包括每个库对应目录的权限分配的,然后自己开发了一个GUI的界面,可以对这个配置文件进行读写操作,所有库的hook都统一指向这个ini配置文件的,这样CMO管理员来添加定义每个库,相应分支目录的权限的, 每个项目分支的PM 自己也可以添加分支目录的权限
/ I9 N. j2 R( N6 W; L  J% q3 {$ T& t  E7 y

0 ~; P# f+ u4 ?& N; J' z$ m9 Q$ c, z: J: o3 S1 R
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-12-24 21:32:52 | 显示全部楼层
回复 qhy218 的帖子
8 R5 B; Y. X0 J0 e8 g: H6 j1 x) N* s+ C$ u5 w" X
后来我想到一个疑问,如果它做了10号全备后,我删除了一个文件,然后15号全备时清掉了10号的全备,那我是不是无法还原删掉的文件啦?
$ X; z, p1 K' n) a$ _+ y9 I
回复 支持 反对

使用道具 举报

发表于 2011-12-24 21:36:04 | 显示全部楼层
okala 发表于 2011-12-24 21:32
3 v- [* d$ E1 T+ x# N! J回复 qhy218 的帖子
" K/ e% W  h: B1 }. [2 D2 {& a0 s; v' o2 b; M% `4 r
后来我想到一个疑问,如果它做了10号全备后,我删除了一个文件,然后15号全备时清掉了 ...
3 F2 f6 \4 \7 D+ x: H, g  V, g
每天都有一份全备,这些全备保留的代价非常小,因为所有重复的块都只会保留一份指针作为记录~~: ~( z- `* f4 {5 ?7 o
我第一次备份重删在40%-80%(看数据类型),以后,基本都是98%-99.99%这样子的重复删除率,也就是每天增加的量是非常少的~~
& z) o" y3 b" f/ C  J% d7 U" ^5 x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2017-6-29 19:38 , Processed in 0.678327 second(s), 8 queries , Gzip On, Memcache On.

Powered by JoyShare X3.2 Licensed

© 2006-2013 JoyShare.

快速回复 返回顶部 返回列表