gpt4 book ai didi

git - 在不丢失 HEAD 的情况下将 HEAD 分配给之前的提交

转载 作者:行者123 更新时间:2023-12-05 09:27:22 29 4
gpt4 key购买 nike

我的本​​地存储库中有一个我不打算推​​送的提交(A)。现在,HEAD 在 A 处。假设我想在提交 (A) 之上创建另一个提交 (B) NOT,但在前一个提交之上而不是提交 (A)。

如何在不丢失最新提交 (A) 的情况下将我的本地 HEAD 分配给之前的提交?

想要撤消/删除提交(A),我想保存它以备后用,以便在我的分支中 rebase 到最新的提交。创建提交 B 后,我想将提交 (A) 放在提交 (B) 之上。

有点像:-

C1 -> C2 -> A(头部)

最后

C1 -> C2 -> B -> A(HEAD)(最终)

我该怎么做?

编辑:-我在不使用其他分支的情况下执行此操作有限制。

最佳答案

rebase

您现在可以创建一个新的提交,然后 rebase -i 重新排序它们。

 (create B)
git rebase -i head˜2
(in the resulting pick list, re-order A and B)
(Use `dd` and `P` to delete and paste lines)
!wq // Exit vim

有一个临时分支

 git checkout -b temp
git reset --hard head˜1
(create B)
git cherry-pick A
git checkout - // Checkout whatever your previous branch was
git reset --hard temp

关于git - 在不丢失 HEAD 的情况下将 HEAD 分配给之前的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72527740/

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