档案软件MR创建与合并实操:从零完成分支合并全流程
一、环境准备(零门槛落地前提)
先完成Git工具安装与仓库绑定,所有操作均用终端执行,无额外软件要求:
- Git安装:根据系统执行对应命令,直接复制粘贴即可: ```bash Windows(管理员PowerShell) winget install Git.Git Mac(终端) brew install git Debian/Ubuntu(终端) sudo apt update && sudo apt install git ```
- 验证Git安装:执行
git --version,输出版本号(如2.45.1)即成功。 - 配置Git身份(替换为自己的Gitee账号信息): ```bash git config --global user.name "你的Gitee用户名" git config --global user.email "你的Gitee注册邮箱" ```
- 关联档案软件远程仓库:克隆公开的档案软件测试仓库(示例地址:https://gitee.com/opensource-tools/archive-management-system.git),执行: ```bash git clone https://gitee.com/opensource-tools/archive-management-system.git cd archive-management-system ```
- 点击顶部导航栏的「合并请求」按钮;
- 源分支选择「feature/archive-search-timeout-fix」,目标分支选择「dev」;
- 标题自动填充为提交说明,描述补充“解决批量检索时5秒超时的问题”;
- 点击「创建合并请求」,完成MR发起。
二、创建修改分支(核心规则必守)
MR的前提是从专属分支发起,必须严格按以下步骤操作,否则会出现代码冲突:
1. 同步远程最新代码
切换到目标分支(本示例用dev开发分支)并拉取最新代码: ```bash git checkout dev git pull origin dev ``` 执行后显示“Already up to date”则同步成功。
2. 创建专属修改分支
分支命名采用Git规范(避免冲突),格式为feature/功能描述或bugfix/修复描述,本次示例创建“调整档案查询超时时间”分支:
```bash
git checkout -b feature/archive-search-timeout-fix
```
重点:分支必须基于最新dev创建,否则MR会无法正常合并。
三、修改档案软件核心逻辑(可直接落地)
本次修改档案查询功能,解决批量检索时超时问题,修改单个核心文件,完整代码可直接复制:
1. 定位修改文件
进入src/archive/search.js文件,执行命令打开(Windows用notepad,Mac用open,Linux用vi,新手推荐用notepad): ```bash notepad src/archive/search.js ```
2. 修改代码内容

原代码为默认5秒超时,修改为10秒,完整替换内容: ```javascript // src/archive/search.js // 档案检索功能:调整超时时间为10秒,适配大数据量检索场景 function searchArchive(keyword) { // AbortSignal.timeout设置10秒超时,避免无效请求占用资源 return fetch(`/api/archive?q=${keyword}`, { signal: AbortSignal.timeout(10000) }) .then(response => { if (!response.ok) throw new Error('检索失败'); return response.json(); }) .catch(error => { console.error('档案检索异常', error); return []; }); } ``` 保存文件后关闭编辑器。
四、提交修改并创建MR(操作唯一路径)
1. 暂存并提交修改
暂存所有修改并添加规范的提交说明(必须符合Conventional Commits格式): ```bash git add . git commit -m "feat: 调整档案查询超时时间至10秒,优化大文件检索稳定性" ```
2. 推送分支到远程
首次推送分支必须添加-u参数,关联本地与远程分支,执行: ```bash git push -u origin feature/archive-search-timeout-fix ```
3. 在Gitee创建MR
打开浏览器登录Gitee,进入自己克隆的档案软件仓库,按步骤操作:
五、MR审核与合并(最终落地)
1. MR审核
等待仓库管理员(或自行作为管理员)审核,审核要点:代码格式是否符合规范、修改是否解决目标问题、无语法错误。若有冲突,按以下步骤解决: ```bash 切换到dev分支同步最新代码 git checkout dev git pull origin dev 合并分支到本地 git merge feature/archive-search-timeout-fix 解决冲突后,暂存并提交 git add . git commit -m "fix: 解决MR合并时的代码冲突" 推送解决冲突后的分支 git push origin feature/archive-search-timeout-fix ```
2. 合并MR
审核通过后,在MR页面点击「合并」按钮,选择「合并为一个提交(推荐)」,确认合并,完成后远程仓库会自动删除feature分支(本地可手动删除:git branch -d feature/archive-search-timeout-fix)。
六、验证合并效果(确认落地成功)
最后验证修改是否生效,步骤: ```bash 切换到目标分支dev并同步最新合并代码 git checkout dev git pull origin dev 启动本地档案软件,访问检索页面,测试批量查询功能,确认无超时错误 ``` 执行后若检索正常,超时时间已改为10秒,说明MR流程成功落地。