我有一个分支开发人员和一个分支前沿。
我在 dev 上有一个 SHA1 id 说 4356xyz 的提交。我希望那是最前沿的。所以我检查了尖端并做了
git reset --hard 4356xyz
现在,当我这样做时,git log
我看到两个分支的历史都变得相同。有没有办法可以在重置之前恢复尖端分支的先前历史记录?
git reset --hard 4356xyz
拿起你的cutting-edge
分支并将其指向那个提交。如果那是指向同一个提交dev
,那么是的,它们将共享相同的历史记录,因为它们现在指向同一个提交。
在您告诉 get 指向它之前,您可以检查git reflog
以找出您的分支cutting-edge
指向的内容 commit 。4356xyz
将来,如果您想将一个分支的提交添加到另一个分支,您需要合并您的分支,或者挑选特定的提交。
要拉只是提交4356xyz
,你会git checkout cutting-edge
然后git cherry-pick 4356xyz
。
是的,您可以使用该git reflog
命令显示分支头所在位置的历史记录。选择您想要的提交,并git reset --hard
与该提交一起使用。