上午在更新服务器和软件版本时,出现了问题。导致不得不马上升级手机版本,否则会无法使用。

我发现在管理智慧家庭项目时,很容易出现问题,使得服务无法正常使用。或是因为更新中改变了一下 API 但是没有注意到,导致软件没法平滑升级。或是测试没有做到位,出现了 BUG 却没有发现。

所以想记录一下,该怎么做好升级工作,或者准确来说,该怎么管理好这个项目。也为以后的长久管理打下一个坚实的基础,毕竟这个项目还是挺有意思的,应该会持续维护很长的一段时间。

自动化

将两个仓库 smart-homesmart-home-flutter 都加上了 Actions

其中,通过 release-drafter 来根据主分支合并的拉取请求标签自动生成发布草稿。

这样我就需要每次添加功能,或者修复什么问题的时候,都通过拉取请求向主分支合并。

发布之后,Actions 会自动向服务器部署,这样就省了不少时间,也防止我乱来。因为只有真正部署的时候,才应该动服务器的相关配置。

开发

项目应该有一个开发分支。因为主分支需要尽可能的保持稳定,这样就需要将很多新功能的开发工作,放在开发分支上。待功能完全开发就绪之后,再合并到主分支,做好测试,并且发布出去。

测试

我每次更新都应该在测试服务器上,测试当前运行的版本能够正常的升级,并且在新版本上工作。才能将这个新版本发布出去。

比如服务器上,我应该确认数据库升级是否正常。应用应该详细的测试各个功能是否可用。

安卓

安卓的测试,因为现在集成了小米推送,所以需要 APPIDAPPKEY 才能正常工作。新建一个测试应用,应用ID 为 com.hehome.home.dev,这样就能够开发时用一套密钥,部署时用一套,防止我自己不小心把密钥给泄露了。

并且还能够在一个手机上同时安装两个应用,更加方便测试。

标签: 项目管理, 智慧家庭