SVN-客户端-Cornerstone

作者: 帅哥_刷哥 | 来源:发表于2016-04-14 22:25 被阅读4174次

    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 = [Person new];
        NSLog(@"%d",person);
      >>>>>>> .r16
    3.解析
      <<<<<<< .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.本地服务器重新链接远程服务器

    相关文章

      网友评论

      • 郑州程序员王一:这篇文章必须点赞
      • 十班武艺郭大路:确实写得很详细
      • b07b51c5598b:我的svn有一个文件夹灰了还又一个禁止的符号 也不能打开 跳出弹窗An error occurred and the operation could not be completed. 该怎么解决啊
      • macfai:pods生成的那些东西,哪些能上传,哪些不能
      • macfai:楼主,我想请教一下,如果用cocoPods管理的项目,首次创建的新项目上传SVN的时候,哪些可以上传,哪些不能上传,能给点提示吗?谢谢
      • walter0817:哎吆,不错哦
      • ee78491e1e16:可以哦,挺详细的。 :+1:

      本文标题:SVN-客户端-Cornerstone

      本文链接:https://www.haomeiwen.com/subject/iktilttx.html