
首先需要在电脑上安装一个SVN软件,我这里以TortoiseSVN为例:
1,安装SVN管理软件,TortoiseSVN为例;
2,在电脑上新建一个文件夹,右键点击选择菜单中的“SVN检出”按钮(英文版为checkout),如图:
3,在d出的对话框中,版本库url一栏,填写服务器地址,如图:
4,点击确定即可。
(一)安装
Windows环境下面分了CollabNet / Tigrisorg(Apache22和Apache20) / SlikSVN / VisualSVN 5个链接,我选的是Tigris Apache22,下载一个目前最新的Setup-Subversion-166msi,点击,一路安装即可,很简单。
开始菜单-》运行-》输入Cmd回车,敲“svn --version --quiet”,会得到SVN的版本号。
(二)配置
1、创建repository
Rrepository是存储数据的地方。
例如要在F:\svnroot下创建repository,就使用命令行svnadmin create f:\svnroot。如果执行正确的话,会在F盘下多一个SVNROOT的目录,目录下有4个目录和2个文件。
2、启动SVN服务
使用命令行 svnserve -d -r f:/svnroot,这样外部就可以它能够过客户端来访问了。
我运行完才发现,这样cmd窗口还不得不一直开着,很难看,当然一般大公司的代码服务器是24小时开着的。
上网搜了一下,也可以作为一个服务自动启动的。执行脚本 sc create svn binpath= "\"d:\Program Files\Subversion\bin\svnserveexe\" --service -r\"f:/svnroot\"" displayname= "Subversion Server" depend= Tcpip start= auto 就可以将svnserve程序作为服务载入。安装路径和存储数据的目录要根据自己的情况修改。
执行完这个脚本,可以去管理工具-》控制面板-》服务那里找找Subversion Server,如果没启动就启动
3、基本设置
修改f:|svnroot\repos\conf\svnserveconf,注释很详细。
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository
[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
期中,anon-access = none表示要用户名和密码,password-db = passwd表示passwd是存身份验证的用户名和密码。sasl,就是加密访问用的,一般也可以不用。
4、用户管理
在f:|svnroot\repos\conf\passwd里添加有权限的用户名和密码。例如添加用户yobin,密码123456,就这样:
[users]
# harry = harryssecret
yobin = 123456
hh = 111
ss = 222
5、分组管理和权限设置
如果是所有文件对用户都可见的话,上面几步也足够用了。但要想对一些人可见,一些人不可见的话,就要去修改authz文件了。
&别名:别名的引用
@用户组名:某组用户
$authenticated:所有已授权用户
$anonymous:匿名用户
: 任何人
r:写权限
rw:读写权限
:不能访问(空,什么都不写)
设置用户权限的时候,'='左侧代表用户名称,可以是实际用户名,也可以是定义的用户组名,也可以是别名,但要用'@'作为前缀,或者是所有用户''。'='右侧代表设置的权限'r'、'rw'或者为空即代表用户对于该目录无任何权限。
authz文件中对版本库路径的表示方法。用'[/]'来表示版本库的根目录,如果有子目录foo,设置该目录权限时用'[/foo]'即可,其他任何目录都以'/'为版本根目录进行表示。注意了,别用”\“!!!
用户某个目录的权限是向子目录递归的。如果用户对于/foo目录有读写权限,则该用户对于foo目录下的所有子目录都有读写权限。如果不设置最上层的目录没有设置权限,那么就相当于不设置,禁止访问。
权限分配,只可以分配到某个目录,而不能到某个文件。
用一台作为SVN服务器就OK,之后版本库浏览,填入连接地址,输入用户名和密码,将资料上传到服务器上。
具体 *** 作步骤:
如何快速建立Subversion服务器,并且在项目中使用起来,这是大家最关心的问题,与CVS相比,Subversion有更多的选择,也更加的容易,几个命令就可以建立一套服务器环境,可以使用起来,这里配套有动画教程。
本文是使用Subversion最快速的教程,在最短的时间里帮助您建立起一套可用的服务器环境,只需略加调整就可以应用到实际项目当中。
本教程分为以下几个部分,为了说明简单,教程是在windows下使用的方式,以方便资源有限的项目使用。在UNIX环境下,只是安装方式不同,命令执行并无太大区别。
软件下载
服务器和客户端安装
建立版本库(Repository)
配置用户和权限
运行独立服务器
初始化导入
基本客户端 *** 作
1,软件下载
下载Subversion服务器程序。
到官方网站的下载二进制安装文件,来到二进制包下载部分,找到 Windows NT, 2000, XP and 2003部分,然后选择Apache 20 或者 Apache 22,这样我们可以看到许多下载的内容,目前可以下载Setup-Subversion-153msi 。
下载Subversion的Windows客户端TortoiseSVN。
TortoiseSVN是扩展Windows Shell的一套工具,可以看作Windows资源管理器的插件,安装之后Windows就可以识别Subversion的工作目录。
官方网站是TortoiseSVN ,下载方式和前面的svn服务器类似,在Download页面的我们可以选择下载的版本,目前的最高稳定版本的安装文件为TortoiseSVN-15514361-win32-svn-154msi。
2,服务器和客户端安装
服务器安装,直接运行Setup-Subversion-153msi ,根据提示安装即可,这样我们就有了一套服务器可以运行的环境。
安装TortoiseSVN,同样直接运行TortoiseSVN-15514361-win32-svn-154msi按照提示安装即可,不过最后完成后会提示是否重启,其实重启只是使svn工作拷贝在windows中的特殊样式生效,与所有的实际功能无关,这里为了立刻看到好的效果,还是重新启动机器。
3,建立版本库(Repository)
运行Subversion服务器需要首先要建立一个版本库(Repository),可以看作服务器上存放数据的数据库,在安装了Subversion服务器之后,可以直接运行,如:
svnadmin create E:\svndemo\repository就会在目录E:\svndemo\repository下创建一个版本库。
我们也可以使用TortoiseSVN图形化的完成这一步:
在目录E:\svndemo\repository下"右键->TortoiseSVN->Create Repository here“, 然后可以选择版本库模式, 这里使用默认即可, 然后就创建了一系列目录和文件。
4,配置用户和权限
来到E:\svndemo\repository\conf目录,修改svnserveconf:
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd
然后修改同目录的passwd文件,去掉下面三行的注释:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret
在passwd文件中,“=”前的字符就是用户名,后面的就是密码。还要注意“[users]”前面的注释“#”一定要删除掉。
5,运行独立服务器
在任意目录下运行:
svnserve -d -r E:\svndemo\repository 我们的服务器程序就已经启动了。注意不要关闭命令行窗口,关闭窗口也会把svnserve停止。
6,初始化导入
来到我们想要导入的项目根目录,在这个例子里是E:\svndemo\initproject,目录下有一个readmetxt文件:
右键->TortoiseSVN->Import
在URL of repository输入“svn://localhost/trunk”
在Import Message中输入你的日志信息
完成之后目录没有任何变化,如果没有报错,数据就已经全部导入到了我们刚才定义的版本库中。
需要注意的是,这一步 *** 作可以完全在另一台安装了TortoiseSVN的主机上进行。例如运行svnserve的主机的IP是1339612122,则URL部分输入的内容就是“svn://1339612122/trunk”。
7,基本客户端 *** 作
取出版本库到一个工作拷贝:
来到任意空目录下,在本例中是E:\svndemo\wc1,运行右键->Checkout,在URL of repository中输入svn://localhost/trunk,这样我们就得到了一份工作拷贝。
在工作拷贝中作出修改并提交:
打开readmetxt,作出修改,然后右键->Commit,这样我们就把修改提交到了版本库,我们可以运行。
察看所作的修改:
readmetxt上右键->TortoiseSVN->Show Log,这样我们就可以看到我们对这个文件所有的提交。在版本1上右键->Compare with working copy,我们可以比较工作拷贝的文件和版本1的区别。
嗯,这是一个令人困惑的问题。
游戏开发、程序开发时,使用Excel可以添加文档、注释、图标、批注等等各种辅助信息;
但是Excel是非纯文本格式,在使用SVN、Git等版本管理软件时,多人进行编辑就会非常容易造成冲突,无法自动合并。 而且在冲突以后,我们很难得知究竟别人改动了哪里。
因此,总结一下以下方法,可以对Excel表格进行差异比较:
商业软件Beyond Compare具有Excel比较功能, 它类似首先把Excel当前打开Sheet转化成TSV,再进行比较。详情可查看 Beyond Compare的官方说明
KEngine 中,策划编辑的配置表经过编译,正是会变成TSV格式的文本文件。
原则上,策划编辑的配置表建议使用Excel的方式,可以方便的添加各种辅助信息;但也为了照顾部分人的习惯,也同时支持了直接编辑TSV文件方式:
TSV源编辑文件,以tsv格式为后缀放置到配置表源文件目录,变会进行编译。规范要求跟Excel一样,头部三行分别是列名、类型、注释。
TSV是一种纯文本格式,在Excel中对TSV表格做的润饰,如设置背景色、列宽等,能看到效果,但都不能被保存。
参照 KEngine 源码中的KEngineUnityProject/Product/SettingSource/AppConfig+TSVtsv文件。
TortoiseSVN客户端时具有Excel比较功能,发生文件冲突后,双击冲突的文件,它就直接调用Excel了,打开多个窗口了。冲突的部分,会用背景色红色标红,但是它的体验非常不好,经常让人摸不着头脑,搞不清楚哪里是改过的,哪里是删掉的;更何况,本身我的Excel文件里就有各种不同的背景色,十分混乱。不推荐。
貌似微软提供了Excel文件的多人协作功能,这个没有用过,不论述了;
我曾经也想实现这个功能。
但似乎不支持这种 *** 作。
因为每个客户端都是先下载,或者直接提交进行更新svn中的程序,并不是实时的 *** 作svn,所以只能以最后一个人提交的数据为准。
因而不能实现有人改或维护程序的同时,其他人不能修改。
以上就是关于如何从svn服务器上下载程序代码到本机上全部的内容,包括:如何从svn服务器上下载程序代码到本机上、如何设置 SVN、2台SVN服务器,我目前某个工程连在其中一台上,如何把源码提交到另一台上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)