我正在开始一个新的小型学习项目,我将和一位朋友一起工作。我们将在同一个项目上工作,但在不同的部分。有时我们需要修改常见的文件。
我的问题是:你们是如何管理这类项目的?我最关心的是故事板文件和其他一些共享资源。
任何建议都会很棒!
答案 0 :(得分:2)
你可以在这里做很多事情而不是所有的都是绝对的,所以这里有一些我的意见。
使用Git。最简单的方法是使用像github或bitbucket这样的服务。
每个人都应创建新分支,以便为特定更改/功能的所有提交进行分组,然后将功能分支合并到您的发布分支中。
有一个好的gitignore,here is github's objective-c gitignore作为例子。
如果您的团队成长或者您很有可能同时处理相同的作品,请不要使用故事板或xib。当你遇到合并冲突时,这些都是非常糟糕的,并且通常不会与多个人一起工作。我建议使用autolayout或不使用autolayout来设置代码中的所有UI。根据我的经验,这也使UI更容易调试,重构和更新。
答案 1 :(得分:1)
@Dima提到NIB文件很难合并,这也适用于项目文件。解决这个问题的一些方法:
使用静态库是非常比其应该更难的事情之一,但是一旦你找到了对XCode的构建设置的模糊更改的正确组合,一切都很好。
简而言之,你需要
YES
,并将所有头文件设为公共逐步查看以下链接:
iOS静态库的最佳HOWTO:http://www.blog.montgomerie.net/easy-xcode-static-library-subprojects-and-submodules
然后,您遇到的第一个错误可能是“找不到头文件”。解决方案here。
如果您的项目需要使用图像或NIB文件等资源,则需要添加.bundle
目标。说明here。
您还可以使用像CocoaPods这样的依赖关系管理系统来自动执行某些静态库配置和构建。见here。
最后,这个answer也有一个有趣的方法来避免xcproject
冲突:指示git“永远联合”合并。我自己没试过。