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

Git重命名master分支后如何创建无提交记录的空master分支

操作步骤

  • 第一步:先切换到feature/FT001分支并拉取最新代码,确保工作区无未提交的修改
    git checkout feature/FT001
    git pull origin feature/FT001
    git status
    
    确认输出无未提交的修改后再执行后续操作
  • 第二步:创建无任何提交历史的孤儿master分支
    git checkout --orphan master
    
  • 第三步:清空工作区所有继承自feature分支的文件,保证master分支初始状态完全为空
    git rm -rf .
    
  • 第四步:提交master分支的初始空提交,生成master的根提交记录
    git commit --allow-empty -m "init empty master branch"
    
  • 第五步:调整feature/FT001分支的提交基线,让所有提交对接在新master的根提交之后,模拟从master切分支开发的历史
    git checkout feature/FT001
    git rebase master
    
    无冲突的情况下执行后即可得到你需要的提交结构:master只有1条初始空提交,所有业务提交都在feature/FT001分支上,且分支从master节点衍生
  • 第六步:将本地分支推送到远端仓库
    # 推送全新的master分支
    git push origin master
    # 推送调整了历史的feature分支,--force-with-lease比强制推送更安全,不会意外覆盖他人提交
    git push origin feature/FT001 --force-with-lease
    

验证方法

执行以下命令查看分支提交拓扑:

git log --graph --oneline --all

可清晰看到master分支为根节点,feature/FT001分支从master节点延伸的结构,后续可正常将feature/FT001合并回master。

注意:如果仓库有多名协作者,修改feature分支历史前请提前通知所有成员,推送后需让其他成员重新拉取feature/FT001分支,避免出现提交冲突


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 00:06:02