通过学习一些资料,了解到SVN在团队合作开发中方便管理和交流,而且记录详细,实时备份,是一个强大的管理工具。理解的很浅,先写写表面知道的东西。
首先,了解几个概念:配置库、工作副本、checkout、commit(checkin)
在一个团队里,每个人手里都有自己手头的资源,包括源代码、文档等, 而且在不断更新中,既然是合作的同一个项目必然就有联系,试想假设每个人需要谁的资源就从谁那要的话,是件很混乱的事情,(生活中,我们每个小组还有讨论组之类的小群呢),那么,现在有一个大仓库,大家把自己的资源都放在仓库里,需要什么拿什么,再用之前更新一下,自己的资源放进去,若自己有修改的地方也更新一下,这样就减少很多麻烦。这个大仓库就是配置库,每个人从库里取东西的过程就是checkout,往库里放的过程就是checkin(同commit)。
了解概念之后,就是怎样做:
安装好visualSVN Sever服务器后,如图,可以建立一个库
可以添加用户,用户可以设置权限,(有大仓库也得看好门,谁也能进,谁也能改动一定是不行的)只读,只写,能读能写
【题外话:这里很有意思,我添加王五的时候,不允许添加,还没有追究为什么】
下面是客户端:
客户端是镶嵌在Windows内壳中的,只要鼠标右击,就会发现带乌龟的小图标和checkout的文件夹图标
在这里角色就是开发人员了,第一步连接大仓库:右击乌龟图标(Tortoise SVN)——Create repository here...弹出创建成功的字样就好了
接下来可以将手里的资料存到仓库或从仓库中取了,很多资料有详细的步骤,有清楚的图片教程,我跟着教程做发现过程很简单,过程中发现英文单词真心多呀,查了好多单词,深深地感受到自己道行太浅。步骤我就不展示图片了。
翻阅资料的时候,总结了几个注意点:
1.从库中取出来的资料一定要记得更新
2.往库里存资料有显示保存但实际并没有更新到库里的阶段
3.可以轻松的拿到想要的版本
4.注释说明一定要写清楚,为什么做出修改,尽量让别人更明白,助于合作
5.两个人拿到同一个版本,并且都做出修改保存到库中时,后者不会覆盖前者,但这时产生冲突,解决办法:先从库中拿到别人最新修改过的资料你再修改;选择放弃修改;与伙伴交流,手动选择保存哪些内容。
6.识别各种小符号,如下图:
米字号(有本地修改代码):
这是说明你有未提交的本地代码。
问好(新加入的资源):
这说明该文件是项目中新增文件资源,新增资源可以是文件、图片、代码等。
红色感叹号(本地代码与库没有保持一致):
这说明本地代码跟库上没有保持一致,如果用户想修复,可以将带红色感叹号图标文件删除,直接update即可
灰色向右箭头(本地修改过)
本地代码没有及时上库。
蓝色向左箭头(SVN上修改过)
记得更新代码后修改,提交前跟svn对比习惯。
灰色向右且中间有个加号的箭头(本地比SVN上多出的文件)
修改完记得跟svn保持一致
色向左且中间有个加号的箭头(SVN上比本地多出的文件)
删除该文件后,再次更新,将svn上文件全部更新下来。
灰色向右且中间有个减号的箭头(本地删除了,而SVN上未删除的文件)
也就是说你删除确认后,一定要记得上库,跟svn保持一致
蓝色向左且中间有个减号的箭头(SVN上删除了,而本地未删除的文件)
比对svn库上代码,确定需要删除后,更新svn(删除无用代码)。
红色双向箭头(SVN上修改过,本地也修改过的文件 )
这个表示本地和svn上都修改过,最好就是把本地修改合并到svn,修改代码前最后先更新。