如何无需提交即可废弃当前Git实验分支?
废弃Git实验分支的快捷方法
首先明确:切换分支时,Git只会处理已被追踪的文件的版本切换,未被Git记录的新文件(没执行过git add的)不会被自动删除,这就是你切换后新文件还在的原因。
完全不需要用rebase——这个命令是用来调整提交历史的,和废弃分支的需求不沾边。下面分两种情况给你快捷处理方案:
情况1:实验分支没有任何提交记录(只是改了文件/加了新文件,没跑过git commit)
- 切回你的原分支:
git checkout <原分支名称> - 删除所有未被Git追踪的新文件和目录:
git clean -fd(-f是强制删除,-d包含嵌套目录) - 直接强制删除实验分支:
git branch -D experimental(因为分支没被合并,用-D强制删除,小写-d会触发报错)
情况2:实验分支有提交记录,但你完全不想保留这些提交
- 先切回原分支:
git checkout <原分支名称> - 直接强制删除实验分支:
git branch -D experimental - 如果切换分支前,实验分支还有未提交的更改,先在实验分支里执行
git reset --hard HEAD,把所有未提交的修改和新文件全部丢弃,再切回原分支删分支即可。
额外补充:如果只是临时废弃、以后可能需要找回分支内容,也可以用git branch -m experimental experimental-archived把分支改名归档,不用直接删除。
内容的提问来源于stack exchange,提问作者BenjaminApprill
相关产品推荐
相关产品推荐

