重新提交一部分提交(按行号)到git中的另一个提交

时间:2013-01-02 19:59:30

标签: git commit

假设我已经在一大堆文件中提交了一大堆行,如提交A和消息“提交A”

假设我想重新提交一部分提交A(按行号)作为新提交,并带有消息“提交B”

我如何在git中实现这一目标? (此外,我尝试重新提交的提交部分由行号标识,并且在同一文件中还有其他行我不想重新提交)

2 个答案:

答案 0 :(得分:2)

目前还不清楚你在问什么,但我假设你想把一个提交分成两个提交。如果是这样,您可以使用交互式rebase来执行此操作。请参阅git help rebase中的“拆分提交”部分。

答案 1 :(得分:0)

如果您想提交大多数行,那么更简单的路线可能是git cherry-pick --no-commit,然后在git commit之前进行适当的修改。但是,如果您要提交的部分位于较小的一端,则在执行git rebase -i之前,git cherry-pick将所需的更改与不需要的更改分开,可能会更容易。如果您确实希望保留原始提交,请务必先创建一个临时分支。