• 当项目越来越大之后,用一个仓库维护进行版本维护。导致.git文件会越来越大,会造成 request body 过大等http协议上的错误。所以需要将一个大项目拆分各个子模块独立进行版本管理。同时还可以设置专人负责模块。
  • 当项目越来越成熟,关注较高时,项目设计成对外开放(例如可以自由切换模板、可以安装插件)。当作者发现某些第三方的模块受关注度较高时。可以引入第三方放的模块。例如OpenWRT,Jenkins、ES等

在多人合作程序开发的过程中,有时会将错误提交的情况,此时希望能撤销提交操作,让程序回到提交前的样子,解决方法:回退(reset)、反做(revert)。