You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Bit Bucket中发起代码评审的命令序列及常见问题咨询

Bit Bucket代码评审的标准命令序列及常见问题解决

先梳理正确的Bit Bucket代码评审命令流程

正常来说,我们都是基于feature分支开发,避免直接修改master分支,这样能减少冲突和混乱,正确步骤应该是这样:

  • 先拉取远程master的最新代码:
    git checkout master
    git pull origin master
  • 创建并切换到你的feature分支(如果还没创建的话):
    git checkout -b feature/your-feature-name
  • 在这个feature分支上开发、修改代码:
    <Make changes to your code>
  • 暂存所有修改(用.比*更稳妥,不会漏掉隐藏文件):
    git add .
  • 提交你的修改,记得写清晰的提交信息:
    git commit -m "feat: 新增用户登录功能 | fix: 修复订单页计算bug"
  • 把本地feature分支推送到远程Bit Bucket仓库:
    git push origin feature/your-feature-name
  • 最后到Bit Bucket网页端,找到你刚推送的feature分支,点击「Create pull request」就能发起代码评审了。

解决你遇到的两个问题

问题1:执行git add *后切换分支,有时提示「Please, commit your changes.」

这个问题根源是你在master分支上做了修改但没提交就想切换分支。Git的设计是:未提交的变更会跟着当前工作区走,如果你直接切换分支,这些变更会被带到新分支上,很容易引发意外冲突。

给你两个解决办法:

  1. 把变更转移到feature分支(推荐):
    先暂存当前master的未提交变更:git stash
    然后切换到feature分支:git checkout feature
    最后把暂存的恢复到feature分支:git stash pop
    这样你的修改就到正确的开发分支上了,后续按正常流程提交即可。
  2. 如果确实要在master提交:
    执行git commit -m "xxx"提交master的修改,再切换分支,但强烈不建议直接在master分支开发代码。

问题2:执行git merge --no-ff origin master后push,有时报错「fatal: You have not concluded your merge (MERGE_HEAD exists).」

这个错误意味着你在合并master到feature分支时遇到了代码冲突,但还没解决完冲突就想push。Git在合并遇到冲突时会暂停,等待你手动解决。

解决步骤:

  1. 先查看哪些文件有冲突:git status,会列出所有冲突文件
  2. 打开冲突文件,找到<<<<<<<、=======、>>>>>>>这些标记,手动修改成正确的代码(比如保留需要的逻辑,删除冲突标记)
  3. 解决完冲突后,暂存文件:git add 冲突文件名(或者git add .全部暂存)
  4. 完成合并提交:git commit(不需要加-m参数,Git会自动生成合并的默认提交信息)
  5. 最后再执行git push就没问题了。

另外提一句,你的步骤7逻辑其实不太对,正确的合并姿势应该是:在feature分支上合并本地更新后的master分支(而不是直接合并origin/master),也就是先拉取master最新代码,切回feature,再执行git merge master,这样能确保你合并的是本地最新的master代码,减少远程冲突。

内容的提问来源于stack exchange,提问作者ChanGan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:19:38