更多设计问题,请告诉我是否有更合适的地方询问software engineering。
我们目前有一个写入Firebase数据库的iOS项目。当应用程序发布到生产环境时,我们不希望它能够写入数据库,只能读取。但是,目前我们已在应用程序中包含读取和写入功能以进行调试。我们计划将应用程序重构为两个单独的应用程序:一个用于一般公众,只能从数据库中读取,一个用于我们的开发团队,将为数据库编写
我对重构/后端没有疑问。我想知道是否有办法设置GitHub所以我们从两个独立的Xcode项目(一个用于读取,一个用于写入)推送到同一个存储库。我目前的解决方案是创建两个单独的GitHub存储库,但如果将它们合并为一个存储库会很好。
答案 0 :(得分:0)
您可以在GitHub存储库中为两个项目创建两个文件夹。但如果您是免费用户,则一个存储库中只有最大1GB
答案 1 :(得分:0)
Git没有“项目”的概念。它查看文件夹和文件(并忽略空目录)。它从目录树的根目录(.git文件所在的位置)开始。您可以根据需要放置任意数量的文件和文件夹(但请注意磁盘空间)。文本文件(代码)很小,所以它不是问题。我有一些有很多小项目的回购。只要资源不重,就不是问题。
但需要注意的一点是,当您进行更改时,它将进入相同的提交行,因此我建议在提交消息中提及项目名称。
答案 2 :(得分:0)
我最后通过为数据库操作创建一个单独的分支来解决这个问题。因为写入数据库是相当静态的代码(不需要更新/修复很多),我们有两个受保护的分支,开发团队的成员可以打开要合并的拉请求,称为develop
和{{ 1}}。
答案 3 :(得分:0)
一个单独的分支正在寻找麻烦。现在有点麻烦,将来会遇到很多麻烦。您将永远将更改从一个分支集成到另一个分支。
退出git,看看Xcode。一个项目可以有多个目标。只需创建两个目标而不是通常的一个目标。每个目标都可以拥有自己的.xcconfig文件,您可以在其中设置每个目标的行为方式。 Git对你有两个目标一无所知,它只处理它看到的一个Xcode项目。