本项目是"软件工程"课程的大作业(映记项目)的前端代码仓库,我们正在开发一个具有展示功能、类似朋友圈的多媒体展示小程序📱!
我们使用TAPD平台进行需求管理和迭代,如果你需要查看我们的全部需求
整个项目采用分包加载的方式进行组织,这样用户启动小程序时,只会加载主包;进入分包页面时,才会加载对应分包。分包结构如下:
事实上,关注⭐️标注的文件夹即可
/项目根目录 ├── auth-flow/ # ⭐️【分包1】:登录认证流程 │ ├── bind-email/ # 绑定邮箱页 │ ├── forget-password/ # 忘记密码页 │ ├── reset-password/ # 重置密码页 │ └── wechat-auth/ # 微信授权页 │ ├── chat/ # ⭐️【分包3】:消息模块子页 │ └── detail/ # 聊天详情页 │ ├── common/ # 公共工具与配置 │ └── config.js # 全局配置文件 │ ├── components/ # ⭐️ 全局公共组件 │ └── my-tabbar/ # 自定义 TabBar 组件 │ ├── discover/ # ⭐️【分包2】:发现模块子页 │ ├── search/ # 搜索页 │ └── search-result/ # 搜索结果页 │ ├── mine-config/ # ⭐️【分包4】:我的/设置子页 │ ├── account-safe/ # 账号与安全页 │ ├── edit-profile/ # 编辑资料页 │ ├── has-password/ # 修改密码页 │ └── setting/ # 设置页 │ ├── pages/ # ⭐️【主包】 │ ├── home/ # 首页 │ ├── login/ # 登录页 │ ├── message/ # 消息页 │ └── mine/ # 我的页 │ ├── static/ # 静态资源(图片、字体、公共样式等) │ ├── customicons.css # 自定义图标样式 │ ├── customicons.ttf # 自定义图标字体 │ └── ... (图片资源) │ ├── uni_modules/ # 插件与组件库 │ ├── uview-plus/ # uView Plus UI 库 │ └── ... (uni-ui 官方组件) │ ├── App.vue # 应用配置,用来配置App全局样式以及监听 ├── main.js # Vue初始化入口文件 ├── manifest.json # 配置应用名称、appid、logo、版本等打包信息 ├── pages.json # ⭐️ 配置页面路由、导航条、选项卡等页面类信息(修改启动页) ├── uni.scss #/项目根目录
# 忽略uni-app编译生成的unpackage目录(不然会导致大量编译产生的文件冲突,很混乱🥴) unpackage/
git rm -r --cached unpackage/
PS: 该命令会将unpackage/目录从Git的版本控制中移除,但不会删除你本地的文件
开发新功能/修复bug时,请务必新建分支(先在本地新建,再push到远程即可同步),分支命名格式统一为: feat/... or fix/...
Sync Frequently原则: 请经常pull远程main分支的最新代码,再切换会开发分支,并merge最新的main分支代码,以尽早发现冲突。具体流程如下:
# 切换会main分支,并pull最新代码
git checkout main
git pull origin main
# 切换回你的开发分支,并merge最新的main分支代码
git checkout feat/... # or fix/...
# 合并main分支最新代码到当前分支,并尽早处理冲突
git merge main
无论是在自己的开发分支,还是在主分支上提交时,都建议遵守以下规范:
<type>(<scope>): <subject>的格式: 如feat(home): 增加调用获取推荐标签API功能
<type>(must-have): 提交类型
<scope>(optional): 表示此次commit的修改范围(常在提交到main分支时使用,如feat(home)表示新增首页相关的功能)<subject>(must-have): 简短描述此次提交的内容,使用祈使句<u-button>✅,而不是<button>search-result.vuepages.json中的启动页,再git add pages.json,最后再提交git add . # 添加所有修改的文件到暂存区
git commit -m "feat(scope): (subject)" # 提交,scope可选
git push origin feat/... # 推送到对应的远程开发分支
feat/...分支的开发后,准备合并到main分支: (采用Squash Merge)# 首先确保本地main分支是最新的
git checkout main
git pull origin main # 拉取远程main分支的最新代码,若有冲突,此处应先解决
# 在主分支处: 将开发分支合并到主分支
git merge --squash feat/... # 使用squash合并,将开发分支新的所有提交压缩为一次提交说明
git status # (optional)查看状态以验证
# 若有冲突,请手动合并解决冲突(或修改启动页后),再`git add <file>`
git commit -m "feat(scope): (subject)" # 描述squash合并的所有提交的内容
# 推送到远程main分支
git push origin main
"pages"数组的第一个☝🏻(PS: 在提交时,记得修改回来)