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

如何在从master分支变基时排除指定目录

Git变基时保留指定目录原有代码的操作方案

以下是在将branch1基于master变基时,保留branch1中folder3目录原有代码的具体步骤:

  1. 更新本地分支

    • 切换到master分支并拉取最新代码:
      git checkout master
      git pull origin master
      
    • 切换回branch1分支并拉取最新代码:
      git checkout branch1
      git pull origin branch1
      
  2. 临时保存branch1中folder3的当前状态
    使用git stash将folder3的内容暂存,避免变基过程中被覆盖:

    git stash push -m "temp backup of branch1's folder3" folder3/
    
  3. 执行变基操作
    将branch1基于最新的master分支变基:

    git rebase master
    

    若变基过程中出现其他目录的冲突,正常解决冲突后继续变基即可(使用git add <冲突文件>后执行git rebase --continue)。

  4. 恢复branch1原有的folder3内容
    变基完成后,恢复之前暂存的folder3内容:

    git stash pop
    
  5. 确认并提交结果
    查看folder3目录的状态,确认是branch1原有的代码后,提交变更:

    git add folder3/
    git commit -m "restore branch1's original folder3 after rebase"
    
  6. 推送变基后的分支
    由于变基修改了提交历史,需要强制推送branch1分支:

    git push origin branch1 --force-with-lease
    

    注意:--force-with-lease比单纯的--force更安全,避免覆盖其他人的提交。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 01:35:19