一、Xcode 支持的版本控制
1.Xcode5.x原生支持Git及SVN版本控制系统,相比于之前的Xcode4.x版本,Git及SVN已经非常好用。最近跟同事沟通,发现还有部分人不愿意使用Git/SVN。确实在之前的4.x版本中,Git/SVN有可能导致Xib错误,冲突解决不友好,这在5.x版本中有了极大的改改善,相比于Eclipse中的Git插件,Xcode原生提供的版本控制简单极易于使用。关于Git及SVN的比较在这里不再提及,本文主要介绍Git的使用,及在GitHub/Oschina中上传项目。
2.目前网上已经有多家git网站,下面给出我最常用的两个网站
http://www.github.com(GitHub,公开项目免费,私有项目收费,最流行的版本控制网站)
http://git.oschina.cn(开源中国,国内网站,访问速度快,公开及私有项目都免费)
网上现在也有一些博客描述了这两个网站的使用,但基本上都是通过SSH方式进行身份验证,而SSH需要进行一些配置才能使用。相对于SSH, HTTPS验证方式就要简单的多了,不需要任何的配置,只需要输入用户名及密码即可。
二、如何上传新的项目
Xcode在提交,更新等操作都极易使用,唯独在提交项目到服务器这一功能有点捉襟见肘。将项目提交到服务器大体有以下几种方法
使用命令行上传(本文不介绍,需要记住命令)
使用第三方的版本控制软件(简单,但需要下载第三方软件)
使用Xcode上传
在这里我们只简单介绍一下不用命令行及第三方软件,只使用Xcode进行版本的上传。上传的时候分为两种情况:
本地项目尚未创建
本地项目已经建立
1.本地项目尚未创建的时候比较简单,第一步先Check out,步骤如下:
在弹出的配置窗口中,填入git服务器的url
直接下一步,将文件保存到本地
这里保存到本地文稿中的Example文件下,下一步直接在这个文件下创建新项目
简单配置一下项目名称等信息
直接下一步,在这一步比较重要,我们要将新创建的项目保存到刚才Check Out的文件夹中,因为这个文件夹的Git已经在Check Out时自动配置好了
保存后,新创建的项目会自动打开,在每一个文件上会多出一个“?”,稍等就会自动识别成如下图
其中"A"代表这个文件夹是新添加的,"M"代表这个文件有修改,下步提交到服务器上
这里简单介绍一下,菜单的作用
Commit 将修改提交到本地的Git仓库中
Push 将本地仓库提交到服务器上
Pull 从服务器获取新的代码
Discard All Changes 取消所有的更改,这一功能慎用,选择这一项是本地的代码会全部取消更改
下一步,将代码Push到服务器上
选择分支,默认即可
Push的时候需要验证,如果没有输入过账号,这里会弹出让输入账号的窗口
至此我们的项目就提交完成了
2.如果本地项目已经建立,该怎么办呢?步骤稍有不同,在从服务器Check Out到要地文件夹下后,将本地已经存在的项目,直接拷贝到Check Out的文件夹中即可,其它的与上面一样。
3.这里说一下使用的一些小技巧
在进行开发的时候,每完成一次功能时要勤提交,提交时注意项目是可运行的, 至少不能有编译错误
Xcode的特殊机制,在添加、删除文件时都会更改项目的配置文件,所以两个人同时进行了文件添加删除操作就有可能引起项目的冲突,冲突可以通过命令行解决
如果想撤销文件的更改,右键该文件Discard changes即可
Xcode提供了版本比较,有的时候我们需要比较不同版本的代码以确定进行哪里更改,在Xcode的右上角Editor上提供了这个功能
同一个文件冲突时,提交时Xcode会直接提供解决冲突的办法,有一个小的switch用于选择哪一版本代码
三、GitHub及git.OSchina的使用
这两个网站都提供了Git相应功能,他们的使用与标准Git没有太大的区别,这里只讲一下这两个如何进行Https认证,简单来说就是应该使用哪一个用户名,我们在提交或者更新项目时,如果直接填入上面两个网站的登陆账号(邮箱)就会出现问题,给出账号的查找办法,如下图
GithHub验证时应该填写的用户名
OSChina的用户名查找
注意两个进行验证时都不能直接使用邮箱