gpt4 book ai didi

git: cleanup or delete commit 清理提交历史

转载 作者:太空狗 更新时间:2023-10-29 14:29:13 27 4
gpt4 key购买 nike

文档和搜索让我对如何清理提交历史感到困惑。

假设我有一个名为 tests 的分支,我用它来将构建推送到 travis-ci,但我的构建失败了。然后我将不得不做一些小的提交来尝试修复错误消息并重新推送 tests 分支。

这可能会导致一连串的小而几乎毫无意义的提交,我并不是真的想做,但我还是不得不这样做。我如何将这些压缩成一个提交?我认为 rebase 是我正在寻找的东西,但我对一些事情感到困惑。

如果我使用 squash,我发现我遇到了大量的 merge 冲突,我必须手动解决这些冲突。

我认为解决方案可能是只删除提交,但我不确定我是否会删除我最终“工作”提交所需的一些历史记录。

假设我的提交历史是这样的:

commit1: some new feature
commit2: crap, builds failing, trying fix
commit3: more build attempts
commit4: Ahh I think I got it this time
commit5: ok finally fixed, build passing

现在我基本上希望只有一个提交 merge 回 master。你会在这里做什么不会导致 merge 冲突?

最佳答案

怎么样

git reset --soft HEAD~[n]
git commit

这应该会压扁你最后的 n 个提交。

关于git: cleanup or delete commit 清理提交历史,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39361884/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com