工程建立与初始化
1. 在Git服务器上建立项目
公司上班的朋友一般是在公司的Git服务器上建立项目,比如gitLab,这里我就直接使用码云了(项目地址)。建立好后关联到本地文件位置,我这里使用SourceTree工具进行管理。这里命名关联的文件夹为FPTest,然后mac显示隐藏文件夹可以看到里面已经有了一个.git文件仓库了。
2. 在本地建立工程项目
因为已经是git托管的文件夹了,所以直接略过xcode上的git的配置。项目建立完成如下。
3. 配置gitignore文件,删除userinterface。
显示macbook上的隐藏文件,然后将配置好的.gitignore文件放在有git文件夹的同层位置。我直接使用我以前配置好的.gitignore文件,需要的朋友可从项目中显示隐藏文件然后获取。
需要了解gitignore的可参考教程。
此时commit一次标记添加了.gitignore
然后在xcode开启状态下进入目录地址如下
删除UserInterfaceState文件,此文件无需提交到git服务器上,当重新打开xcode时会自动再生成。重新commit标记删除了UserInterfaceState。删除方法可参考教程
然后利用sourceTree工具push代码到服务器端确保一切正常。
4. commit概述
commit会记录提交的人,提交的内容,时间等。详细可参考教程
顺带一提,提交时可使用如下三种方式
1.#tag 此标记可以用来表示每次发布到线上时的稳定版本。
如发布了一个v1.2版本可标记为#tag v1.2 。程序上线后如发现有一个需要快速修改的bug,而本地项目正在做新的需求,则此时可以将代码使用git回退到tag v1.2后进行修改然后重新发布。这样则不会让新需求代码对发布的项目产生干扰。修改完bug后可重新回到新需求开发的地方,合并修改的地方。但个人不推荐此方法,合并过程中稍有不慎便会变得麻烦复杂。
最好是将#tag v1.2代码拷贝一份放置在git服务器中放置tag文件夹的对应地方。需要修改bug时用这tag文件夹的代码进行修改发布,重新打一个新的版本到tag文件夹中。虽然重复了点,但确保简单安全。
此方法适用于线上稳定版本出现需要修改的bug但修改量很少时。如果此时正在进行新的需求开发,需要修复的bug工作量大且不是特别严重则建议发布新版本时一并修复,多版本维护是特别麻烦的。
2.#bug10 后面的编号可用来表示禅道等管理工具中对应的bug编号
3.#task10 后面的编号可用来表示禅道管理工具中对应的任务需求编号
commit加上#tag,#bug,#task,一个是方便自己能在commit记录中快速筛选,另一个是如果公司较大且较为深度使用禅道等工具,则此类标记可以在你每次提交commit后直接反应到禅道中,用于统计开发的进度情况,可参考禅道简单了解
5. 利用pods添加几个常用的第三方库。
暂时先添加网络请求,下拉刷新和网络图片加载三个库吧,如下图所示配置Podfile文件,修改工程支持版本为11.0,然后放置到项目中用命令安装,完成后commit
6. 建立头文件预加载的pch文件
以前xcode是默认会生成的,用来导入一些常用的库,让你不用在每个需要使用到库的地方都重新导入一遍。去掉的原因是苹果觉得预加载的库太多会影响性能,但实际情况是影响忽略不计,非极客者不用考虑,方便实用才是我等懒人之首选。
参考教程
7. 建立常用父类base类文件
很多东西都是需要一些基类来继承和拓展使用的,如导航栏,Viewcontroller,TableView等。建立如下文件,继承对应的系统类,每个base类后续我会详细的解释下。
另外值得一提的是xcode中黄色的文件夹名是虚拟的文件夹,本身不存在,所以这个文件夹用中文还是英文都无所谓,我比较喜欢用中文,后续我的项目里也都会用中文建立。同样的,我们建立一个虚拟的黄色文件夹后最好要对应一个实际的文件夹,方便以后的代码文件管理。
8. 导入常用的一些第三方工具
我挑了几个常用的工具,暂时加入项目中,后续随着完善再继续添加。
运行发现报错,修改代码将导入换成UIKit。