EDA365电子工程师网

标题: 【分享版本控制系统SVN】 [打印本页]

作者: 谁家的熊孩子    时间: 2017-6-15 17:16
标题: 【分享版本控制系统SVN】
本帖最后由 谁家的熊孩子 于 2017-6-15 17:16 编辑
/ ^" w: d8 v; Q/ I. d* q# W6 x
0 O0 D/ Y1 u+ d9 l% q+ X& v这里分享一个封装库的版本控制系统工具SVN。. P6 r2 B. c' ]) {
  c  F8 _7 s) I( L, u
1.SVN简介
0 @# h& J. S, V9 I  多人协作版本控制需要有一个服务器建立仓库repository来保存、管理不同的版本,其作用细分为建立项目,建立用户,管理权限,分组控制等。服务器建立的用户包含用户名和密钥,用于远程用户登陆。
$ g& u& N2 S6 `9 h. t服务器仓库repository使用VisualSVN或(VisualSVNservice)建立,客户端文件使用TortoiseSVN建立。3 \3 \) l& r! m9 R9 G
TortoiseSVN-1.9.5.27581-x64-svn-1.9.5.rar (17.12 MB, 下载次数: 11)
1 j$ Q& N  u3 Q# _! N7 }' ~' W) c9 l  ~8 u5 ~+ y
VisualSVN-Server-3.6.0-x64.rar (7.72 MB, 下载次数: 1) 6 F) c" Q0 Q' W- s* t% w
5 |7 A7 U+ r' M2 h4 C
2、搭建服务器
  m( T6 t8 b6 I8 Y  J/ h0 f下载上面附件后,双击VisualSVN server安装;安装过程比较简单,全选默认参数即可(其中安装路径可视个人习惯更改),详细安装过程也可在百度经验上搜到,如下链接:( a# I# r; D) O- |! U( v
http://jingyan.baidu.com/article/358570f663fca4ce4724fc01.html
7 ~# ]! L% ]4 H1 \1 p3 H
3 G" J% \# i" g! G
' [5 j. U3 T# m+ x# C) L
3、SVN服务器的使用8 u6 S' K8 q% G9 e# }/ b
(1)创建库文件夹
" F1 j# S- D  ^; i) D! x) R6 I% M启动VisualSVN Server Manage,右键左边窗口的Repositores,选择新建-Repository,按提示可新建库,比如说新建EDA工程师专用的库,文件夹名称就叫EDA。有不清楚的可以再交流,有需要的话我再补充截图。- Y; t5 v: S  U6 r& `8 L( h
(2)配置权限; Z0 U8 d, n' s. K/ c8 O
VisualSVN Server Manage主界面左边窗口除了Repositores还有Users和Group,这也提供了两种权限配置的方式:8 ~5 P( J5 T; Y& n8 D
一种是可以一个个用户配置,使用Users就可以了;- N: T% p6 B! X2 q2 W1 H
一种是Users搭配Group用,即把所有有SVN需求的users全输入到Users里,然后在Group里建组,分别把Users中的人员分配到每个组中,比如说可以建立EDA组、HW组、MD组等,然后给Repositores里的EDA文件夹配置权限时,不需要一个个user去选择了,直接选择EDA组和HW组(如果HW组的同事也有EDA库需求的话)就配置好了。有不清楚的可以再交流,有需要的话我再补充截图。
; H* P. B# x* q. ~(3)配置邮件即时提醒功能" j6 D5 j) x  Z6 N* `0 G
很多人使用SVN来控制版本,却经常不用SVN服务器的邮件推送功能,当然有些时候确实是不需要。我之前配置的时候没查到中文的配置方法,问了好多用过SVN的人都不知道怎么配置,最后是翻阅SVN官网上的datasheet才知道配置方法的,这里和大家分享一下。首先,选择需要配置邮件提醒功能的文件夹,右键选择properties...
% V. y' A* Q  Y' T* D 0 E9 [' m# c+ B$ F" ]* V
在打开的properties中选择post-commit hook,如下图所示
& }) c3 n& z- }# A+ b+ W  k! s$ b6 R
% A. \6 o+ l2 y. d% q0 X3 n编写邮件通知脚本,注意所有字符均为英文字符,基本语句如下:. ?/ d& ^& k9 w  O9 H
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^   
commit-notification "%1" -r %2 ^   
2 x, K+ M! u8 y7 e( d$ R1 l--from <from-email> 4 U0 f4 |$ U5 s8 L) A' A
--to <to-email> ^    
- M' {& @- L# ?& K7 {6 E& B! ?--smtp-server <smtp-server>
; l, A- ^5 f& O- [编写完成后,如下图所示
) k/ }, c. T+ ~- Y0 e ! F! L6 @; J3 e3 U! o# \
具体可查看VisualSVN关于邮件配置的说明:https://www.visualsvn.com/support/topic/00018/8 D6 J4 G/ L9 @5 t

5 s1 @# \  M4 K  C$ U$ s* {9 d4、安装SVN客户端
0 P" h% i$ y% W双击TortoiseSVN安装软件运行,nextnextnextinstallfinish
5 l+ r1 U/ m5 q/ T* o需要注意的是:重启之后右键才能看到SVN checkoutTortoiseSVN选项。" ?; Z" L( |% R* W: {
. A& N, [1 `4 K6 ~. S3 E! R2 O# Z

3 \4 y) k: p0 f6 S) `4 p* O5、SVN客户端的使用
+ s2 B: ^: |: i(1)下载及更新库
+ A* k5 n- q" b: V在想要放置库文件夹的地方右键,选SVNcheckout…,出现如下界面,输入SVN服务器中对应的地址,检查本地文件夹地址,点ok,等待下载完成。
& }4 A2 K; X, e1 T$ `$ `1 e8 Q
+ O+ [$ n& }3 z+ [$ i/ W2 }下载完成后,如果想要更新库,就选中需要更新的文件夹,右键,SVN Updateok等待更新完毕即可。
5 o4 z4 O. E% m' |, H& G5 J( x" X8 F   X; l  |! f/ B0 {, t0 a
(2)修改及提交) u$ }  x, S7 @9 g
修改库内容需要对库有write的权限,修改库包括新增或修改已有对象,新增的话,比如说新增一个pad文件,将pad文件复制到库路径下,右键TortoiseSVNAdd,标记为增加状态,再点新增的pad文件或其上级文件夹,右键SVN Commit…,填写log日志,ok,此时才完成SVN提交,其他人update后可见。修改已有对象的话,直接修改完成后直接右键,或退回其上级文件夹右键,SVN Commit…,填写log日志,ok。
& K$ _) _* Q  a. o(3)查询log
5 a, P. h. Z1 n8 C
Update完成后可点击show log来查询库更新信息,如下图所示- b# c& ^* {/ @

  P3 c3 t% L7 R" F# E

4 }1 ]; ~' \+ P( M! |# Q其他有什么问题,欢迎交流~8 k  E5 ~/ A7 a  _) B5 ^4 \
  B1 {7 B, y7 H' k4 C
! ^- _- {! C$ p" H! l
( ?5 ?; i# i; U

, ^9 S9 s( A. f7 Q2 {1 t5 e' g" I& P7 W1 U  E
4 f# f1 J4 Y8 p3 s

. r) t  {1 v9 p$ f6 ^" T$ {/ u7 w5 x/ c$ l" a& j: k

作者: 步六孤    时间: 2017-7-20 16:51
好像很厉害定的样子
作者: 472710675    时间: 2017-12-12 16:09
是破解的吧,楼主是用在那个EDA上,AD中怎样使用
作者: leon_dong    时间: 2018-4-3 21:55
好东西,试试,感谢分享




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2