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

如何在Github为不同目录创建独立分支并仅推送对应文件修改

问题根因

你的操作顺序存在错误,Git的特性是未提交的工作区/暂存区修改会跟随分支切换操作移动,同时你先在master分支提交代码再切新分支的操作,也会导致master分支被塞入不属于它的提交记录,最终出现多目录修改混进同一个分支的问题。

第一步:清理当前错误状态

先修正已经出错的分支和master分支记录:

  1. 切回master分支,回退错误提交,将所有修改放回工作区
git checkout master
# 回退最近1次提交,若不确定提交版本,可先执行git log --oneline查看对应commit hash后替换HEAD~1
git reset HEAD~1
# 清空暂存区,确保所有修改回到未暂存状态
git reset HEAD .
  1. 删除本地和远端的错误branch01分支
# 删除本地错误分支
git branch -D branch01
# 删除远端错误分支
git push origin --delete branch01
第二步:正确的多目录分分支提交流程

后续要为不同目录单独创建分支提交,严格按以下顺序操作:

  • 每次创建新分支前,先确认处于master分支,所有修改都为未暂存、未提交状态,可执行git status确认
  • 先创建并切换到对应目录的目标新分支,不要先提交再切分支
git checkout -b branch01
  • 仅暂存需要提交到当前分支的目录/文件,不要使用git add .这类全量暂存命令
git add Files_for_branch01/
  • 提交当前分支的改动,此时其他目录的修改仍会保留在工作区,不会被提交
git commit -m "files 01"
  • 推送当前分支到远端
git push -u origin branch01
  • 切回master分支,未提交的其他目录修改会自动带回master工作区,即可按相同逻辑创建其他目录的对应分支
git checkout master
注意事项
  • 每次切换分支前,确保当前分支的修改已经全部提交完成,避免不同分支的修改混杂
  • 若切换分支时提示存在未提交修改无法切换,要么先完成当前分支的提交,要么执行git stash临时存储改动后再切换

内容的提问来源于stack exchange,提问作者C-Bk

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 04:45:04