gpt4 book ai didi

git - 我可以将一个文件中的更改分成两次提交吗?

转载 作者:行者123 更新时间:2023-12-03 20:16:51 28 4
gpt4 key购买 nike

我被要求将我在一个本地提交中的一个文件中的几个不相关的更改拆分为两个单独的提交(假设我修复了一个错误,但也做了一些拼写检查,这不应该是修复的一部分) .基本上,我需要从现有提交中“挑选”一些更改为新提交。 git 可以以任何方式帮助我吗?实现这一目标的最佳方法是什么?

最佳答案

关于如何解决这个问题,有几种选择。最简单的情况是,如果您要拆分的提交是最新的提交。所以当你运行 git show ,然后它显示提交。

在这种情况下,最简单的方法是重置该提交并再次提交更改:

# Remove the commit, but keep all changes
git reset --soft HEAD~1

这将使您拥有索引中该提交的所有更改。从那里,您可以修改索引以仅包含您想要首先提交的更改。您可以与 git reset -p 合作或 git add -p进行基于补丁的交互式添加或删除分阶段更改。您也可以调用 git gui启动 Git 附带的 GUI 以更轻松地执行此操作。当然,您可以使用任何其他您喜欢的工具。

在您为第一次提交选择了正确的更改后(您可以使用 git diff --cached 进行检查),只需提交它们,然后再进行下一次提交。您可以为所需的多个单独提交重复该过程,直到最终提交所有挂起的更改。

如果要拆分的提交不是最新的,则过程会复杂一些。您可以使用交互式 rebase 来基本上编辑要拆分的提交。交互式 rebase 将使您处于临时状态,该状态是“最新”提交。此时,您可以按照上面的过程进行操作,并在完成后继续进行 rebase 。

关于git - 我可以将一个文件中的更改分成两次提交吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51766531/

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