git - 修改未 merge 功能分支中所有提交的简单方法?

标签 git

有没有一种快速的方法可以撤消功能分支中的所有提交(保持更改未暂存)并快速执行一些 git add -pgit commit 循环当您知道如何在事后对变化进行分组时,会创建一个新的、更干净的历史吗?

假设我对一个巨大的功能进行了 80 次提交,其中一些提交是“临时保存”的恢复(是的,我可以将其 stash ,但我没有)。

所以我只想撤消功能分支的所有提交。例如,我知道我可以 git reset HEAD^N ,我可以做同样的事情,但使用 master/HEAD 或其他东西吗?

最佳答案

我认为你想要的只是 reset with "mixed"-option 。因此,如果您的功能分支处于事件状态并且您想要删除提交并仍然保留更改并从 master-branch 重新开始:

git reset --mixed master

然后您可以进行您认为合适的提交。

关于git - 修改未 merge 功能分支中所有提交的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51379155/

相关文章:

git - 如果您一直在使用 git merge origin/master , git reset --soft origin/master 会失败吗?

git - 代表 Git 仓库的数学结构是什么

git - 标签和发布有什么区别?

git - 我只是通过不正确地使用 git rebase 破坏了我的工作吗

git - 更改证书外部 CA 后的 "Unable to get local issuer certificate"

几次推送后 Git 推送挂起

git - 暂存未跟踪的文件以进行提交,而不暂存跟踪的文件更改

git - VS2022 中的工作树?

git - 为什么用于从分离的 HEAD 创建新的远程分支的 git push 语法如此不同?

git - 如何让 composer 不为包创建 .git 目录