1.Cornerstone远程仓库配置
2.Cornerstone工作界面
3.下载项目
选中远程仓库,点击下载checkout,下载到本地即可.
4.更新项目
选中本地仓库,点击更新update即可.
5.创建tag
1.选中远程仓库中的trunk目录2.点击tag创建tag即可
6.创建分支branch
分支可以通过tag去开,也可以直接从trunk中去开.
7.合并
使用merge,用于分支版本合并到主版本,解决完冲突之后,提交即可。
8.项目提交commit
注意:1.在提交项目时,文件必须要提交完整2.提交的代码必须是可编译运行的代码,不能报错。
8.1什么是提交完整了。
8.2提交out of date
本地代码版本号与服务器当前最新版本号不一致导致
8.3文件冲突没有修改完不允许提交
只要项目中有冲突文件,那么再提交项目的时候是不允许提交的,必须修改完成,才能提交.
9.新文件加入SVN管理 add
项目中新增的文件或者文件夹都必须要add加入到SVN管理,才能提交.1.新建的文件2.新添加的图片3.新导入的资源等
10.文件与文件夹状态
10.1位置
10.2未添加
10.3新添加并且未提交到服务器
10.4文件被修改
10.5文件被删除
只有提交到过服务器的文件删除才会显示这样的标识,新添加的文件删除就会被直接删除.
10.6文件冲突
10.7文件被替换
10.8文件夹下有被改动的文件
11.忽略文件
1.Xcode缓存文件忽略 注意:不要删除xcuserdata文件夹.只需要删除内部文件即可. 忽略文件设置一次即可.其它的小组成员只需要更新就可以了.也就是一次忽略,处处忽略.
11.1设置.a库不被忽略
12.冲突
在Cornerstone中冲突会用红色的C表示。
当文件冲突后,文件中会默认增加三个文件。
.mine表示自己当前的代码.r14表示14版本的代码.r16表示16版本的代码,一般高版本的就是服务器上的最新代码.
12.1文件冲突解决
1.打开冲突文件 .m文件或者.n文件2.搜索 === 会找到这么一组数据 <<<<<<< .mine Person *p = [[Person alloc] init]; p.name = @"张三"; NSLog(@"%@",p); ======= Person *person = [Personnew]; NSLog(@"%d",person); >>>>>>> .r163.解析 <<<<<<< .mine 到 ======= 是自己的代码 ======= 到 >>>>>>> .r16 是服务器最新代码4.解决,需要和r16版本的人一起解决冲突问题.4.1如果两份代码都要保留,就删除 <<<<<<< .mine , ======= , >>>>>>> .r16 即可4.2如果只需要保留一份,那么需要删除 <<<<<<< .mine , ======= , >>>>>>> .r16 和 两个人配合整理逻辑即可.5.冲突解决完之后,需要对冲突文件resolve即可.
12.2project.pbxproj配置文件冲突
1.project.pbxproj 是Xcode记录文件位置和引用的文件,这个文件不可以忽略.2.project.pbxproj 也是我们冲突特别高的文件.3.引发冲突的原因: 当A往项目中添加一个文件.那么Xcode会默认修改这个project.pbxproj文件. 当B往项目中添加一个文件..那么Xcode也会默认修改这个project.pbxproj文件. 由于两个人的Xcode都修改了这个文件那么当两个人提交就会发生冲突.4.解决方式: 打开project.pbxproj文件,删除里面所有的 <<<<<<< .mine , ======= , >>>>>>> .r16 即可. 注意:其它的不要动,就删这些即可.
特别注意:
当project.pbxproj文件冲突的时候,应用就打不开.所以当应用打不开的时候,就第一时间来查看这个文件是否已经冲突了.
解决方式:
12.3无法checkout
checkout的目录下已经有了一个同名的文件夹,所以修改下载时的文件夹名称或者修改下载路径即可.
12.3.1bug显示
12.4无法更新
因为SVN服务器的地址已经发生了变化,所以无法连接
解决方式:更换连接的服务器SVN地址
12.4.1bug显示
12.4.2.修改远程服务器路径:
12.4.3.本地服务器重新链接远程服务器
文/帅哥_刷哥(简书作者)
原文链接:http://www.jianshu.com/p/32d17452a4cd
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。