CornerStone for Mac

iOS开发中,最好用的svnMac版源码管理工具就是Cornerstone,下面介绍CornerStone的使用:

一、安装

CornerStone是收费,如果是公司需要使用到,建议让公司购买软件使用版权,支持正版,当然网上也是有破解版本的。破解版,提取密码(ggmk),如果下载成功需要输入密码(www.ifunmac.com)。

二、配置SVN

CornerStone for Mac

首先,打开Cornerstone,点击”+“号,添加一个仓库,选中HTTP Server

CornerStone for Mac

例如:

https://192.168.1.11:443/svn/FXBest
  • Protocol:分为HTTPHTTPS,如果公司的服务器地址是HTTPS选择HTTPS,反之,选择HTTP
  • Server:填写服务器地址。

例如:

192.168.1.12
  • Port:服务器地址中端口号。

例如:

192.168.1.12:443
  • Repository pathsvn仓库的访问路径。
  • NickName:仓库显示的名称。
  • Name:用户名
  • Password:密码

注意:

  • 填写好之后,会自动生成,这样的一串路径。如果你填写完之后不是这种svn://用户名@主机地址:端口号/路径的格式,则说明填写有误。

例如:

https://michael@192.168.1.12:443/svn/iOS

小技巧,一般进入公司,项目负责人会给你开svn的账号,然后会把svn的路径发给你,拿到这串路径,直接复制一下,然后切换到CornerStone,发现svn的路径会自动填充到CornerStone上面。

三、基本使用

1、上传项目到远端仓库repository
可以直接将文件或者文件夹拖到repository的子文件夹中,或是选择软件上方的Import按钮上传,会弹出选项填写所在位置及名称,然后选择Import即可。

CornerStone for Mac

2、下载项目

CornerStone for Mac

注意:

下载项目,一般分为ExportCheck Out

  • Export后的项目不会与repository中的源文件相关联,是一个独立的版本。
  • Check Out下来的文件会创建一个working copy,此文件与repository中源文件相关联,当有别人修改或是自己修改时,working copy会显示修改数量,白色数量为别人修改数量,灰色数量为自己修改数量,所以如果你是项目中的开发人员,可以选择check out
  • 如果只是下载查看,不希望自己的修改影响到整个项目,最好是选Export

3、版本管理
每一次提交会创建一个新版本,在repository中会保存所有历史版本,可通过修改人及提交信息进行检索版本,所以用svn开发可以很好的控制项目出现不可解决及未知bug时代码的修复问题。

例如:

CornerStone for Mac

注意事项:

  • 先更新后提交,当你看到你check out下来的项目有白色圈时,说明有人已经提交了代码,这个时候,你应该先update一下,直至working copy不再显示白色圈,然后运行一下项目,确保项目没有冲突或者丢失的文件,然后在commit自己的代码。否则,会造成项目中出现多处冲突或者覆盖掉别人提交的代码。
  • 在项目开发阶段,最好每次开发完一个独立的功能,或者在测试阶段,解决一个bug之后再提交代码到svn,不要连续多次重复提交,造成版本过多过杂。并且每次提交时务必填写提交信息,方便查看历史版本。

小技巧(svn ignores的使用)

在项目中引入第三库,在本地运行项目,发现没有任何问题,但是提交到svn,其他人update之后,在运行项目发现报错,很有可能是静态文件没有上传到svn造成的。

CornerStone for Mac

选择Preferences

CornerStone for Mac

勾选Use default global ignores,删除.a后,点击save
然后,会发现check out下来的项目中会有这些问号的文件存在,把这些带有问号的文件commitsvn,问题就解决了。

CornerStone for Mac

注意:

如果选择要忽略提交的文件之后,不要再把Use default global ignores选中,选中Use default global ignores的意思使用缺省的ignores

四、CornerStone常见的图标含义

CornerStone for Mac

check out 下来的项目中做了修改,那么在修改之后的文件后面会有一个”M“的标志。

CornerStone for Mac

check out 下来的项目中做了修改,新添加一个文件,那么新添加之后的文件后面会有一个 的标志,此时你需要点击add,添加到项目中,然后在commit

CornerStone for Mac
CornerStone for Mac

check out 下来的项目中做了修改,删除一个文件,那么删除之后的文件后面会有一个 “D” 的标志。check out 下来的项目中,如果AB同时修改了同一行代码然后commitsvn,那么冲突之后的文件后面会有一个 “C“的标志。

注意:

原则上同一组开发人员最好不要在同一文件中进行操作,但有时候必须去其他文件中进行操作,或者是误操作,如果同时多人在同一文件的同一位置修改代码,后提交的人会出现版本冲突文件,一般会有三个同样名称不同后缀的文件。

CornerStone for Mac

其中.mine文件:本人所做修改,两个.r0XX文件:XX为数字,数字较小的为更改前的文件,较大的为更改后的文件,在文件中会有<<<< mine .r0XX>>>>>等字样包含起来的代码,即冲突的地方,此时请和组内同事讨论或自己删除某部分修改文件后进行调试,修复文件。

五、创建分支和Tag

CornerStone for Mac
CornerStone for Mac
  • 选择项目所在的远程仓库
  • 选择要创建分支的项目
  • 右键或者点击上图选择Branch
  • 选择分支存放的路径

注意:

  • Branch As:分支的名称
  • Where:把分支存放在什么位置
  • Tag同Branch一样

六、Merge

CornerStone for Mac

如果两个分支需要合并到主干,Checkout到本地,点击需要合并到的项。
点击Merge
点击Sychronize Branch:选择需要从被合并的项目(merge from)合并到这里,然后提交就可以了(如果同时有两个分支,最需仍需要在分支上修改的话,先合并一个分支到主干,然后主干在合并到另一个分支,修改冲突后提交,前提是,刚开始主干和两个分支的代码一样,参考上边的步骤生成)。

注意:

  • workcopying中选择目标copying,然后点击Merge,如图所示
  • 选择Mergefromcopying
  • Merge之前cornerstone会进行dry run,进行merge分析和预览
  • 确认无误后Merge Changes(该操作是本地操作,注意解决冲突后在commit)

七、cornerStone错误异常处理

  • An error occurred and the operation could not be completed.
    CornerStone for Mac

    主要是由于你操作异常导致的,解决方案是,把生成的错误文件删除,然后在重新安装一下就可以了。

    CornerStone for Mac

    把红色箭头部分的文件删除就可以了。

  • Some of the items in this working copy are out-of-date
CornerStone for Mac

本地代码版本号与服务器当前最新版本号不一致导致
点击update to latest,更新服务器最新的就可以了。


原创文章,作者:DevilStefan,如若转载,请注明出处:https://www.pmtemple.com/fengsaitao/897/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
DevilStefan的头像DevilStefan神一样的存在
上一篇 2018年1月25日 下午8:18
下一篇 2018年1月27日 下午12:36

相关推荐

发表回复

登录后才能评论
微信公众号
微信公众号
edgesensor_high 小程序
小程序
分享本页
返回顶部