参考:
http://blog.csdn.net/gf771115/article/details/41008853
http://www.th7.cn/Program/IOS/201605/859721.shtml
如果你重没接触过svn,也许这篇文章会对你有点帮助。一个大project总是很多人一起在开发,每个人都会更新这个project的sourcecode,svn就是为了方便大家一起维护管理sourcecode而诞生的。(svn真是不可多得的好东西!很奇怪LTE那么大的工程那么多人做,实验室怎么没人提倡用svn呢?)
1.SVN配置
假设你公司svn地址为:svn://192.168.1.111/svn/ios 用户名:svnserver,密码:123456
1:填写主机地址(Tunnel就默认None)
2:如果你的主机地址中有端口号,如为192.168.1.111:8080,则server:192.168.1.111,port中填写8080
3:Repository path填写主机后面的路径: svn/ios
4:Nickname自动生成,如果你填写完之后不是这种svn://用户名@主机地址:端口号/路径的格式,则说明填写有误
5:也会自动生成,将会在侧边栏显示为5中的名称,可以自定义名称
6:用户名:svnserver
7:密码:123456
8:以上信息填写无误之后选择添加即可,如遇添加失败,信息填写无误,则联系管理员,查看地址,用户名,密码是否正确
2.HTTP配置
与svn一样,只有一个地方需要注意,如果地址是https://,则需修改下图所示位置(protocol)的选项为HTTPS,否则也会添加失败
3、使用简介
3.1.上传项目到repository
- 可以直接拖动到repository的子文件夹中
- 或是选择软件上方的Import按钮上传,会弹出选项填写所在位置及名称,然后选择Import即可
3.2.下载项目
下载分为两种:Export 和 Check Out
区别在于
1) ** Export后的项目不会与repository中的源文件相关联(不相关),是一个独立的版本
2) ** Check Out下来的文件会创建一个working copy,参见步骤三的第一幅图,此文件与库中源文件相关联(相关),当有新版本(他人修改)或是本地修改(自己修改)时,working copy会显示修改数量,白色数量为他人修改数量,灰色数量为本人修改数量
所以如果你是项目中的开发人员,可以选择check out,如果只是下载查看,不希望自己的修改影响到整个项目,最好是选择Export
3.3.版本管理
每一次提交会创建一个新版本,在repository中会保存所有历史版本,如下图(可通过修改人及提交信息进行检索版本),所以用svn开发可以很好的控制项目出现不可解决及未知bug时代码的修复问题
3.6. 基本使用
a)选中所添加的服务端空间导入文件
b)将文件下载到本地
C) 打开文件
3.6.字母标识
1.此文件夹下有改动的地方
2.M : 有修改的地方
3.?:有添加的文件
4.!:本地删除了此文件
5.D(删除)
6.C(冲突)
3.7. 注意事项
svn方便了多人开发同一项目的代码合并问题,但是也有一些事项需要注意:
a)先更新后提交
在看到有新版本(即同伴已经提交代码时),先更新代码,直至working copy不再显示白色圈,然后运行代码确定可运行且功能无误之后再commit自己的代码,否则,会造成项目中出现多处冲突或bug,且很难排查原因
b)完成独立功能后再提交,且务必填写提交信息
每完成一个独立的功能,或解决一个bug之后再提交代码,不要连续多次重复提交,造成版本过多过杂,且提交时务必填写提交信息,交代本次完成了什么功能,方便上图中可以进行message的搜索来查看历史版本
c)冲突文件
原则上同一组开发人员最好不要在同一文件中进行操作,但有时候必须去其他文件中进行操作,或者是误操作,如果同时多人在同一文件的同一位置修改代码,后提交的人会出现版本冲突文件,一般会有三个同样名称不同后缀的文件
.mine文件:本人所做修改
两个.r0XX文件:XX为数字,数字较小的为更改前的文件,较大的为更改后的文件,在文件中会有<<<< mine .r0XX >>>>>等字样包含起来的代码,即冲突的地方,此时请和组内同事讨论或自己删除某部分修改文件后进行调试,修复文件
针对ios项目:出现某个工程或文件打不开的情况,如果为.project文件无法打开,则选择显示包内容->用文稿打开project.pbxproj文件->搜索.mine,将.mine部分前后<<<< >>>>包含起来的代码删除,工程就可以打开了,如果build时出现某个xib文件打不开的错误,则选中,用文稿打开,跟上文同样操作即可解决无法build的问题
d)新添加文件
提交时新增加的文件显示为问号状态的,请选中右击后 选择Add to Working Copy之后再commit