Git 如何将主控中的更改重新设置为安全分离的磁头

Git 如何将主控中的更改重新设置为安全分离的磁头,git,branch,git-detached-head,Git,Branch,Git Detached Head,直到现在,我才意识到我一直在研究分离头(a32b42b123)分支。这家分行跟不上师傅很多。我做了以下的手术, git签出主机和&git拉取原始主机 git签出a32b42b123和&git重新基础主控程序 要将此分支与master同步,请注意我在此分支中所做的大多数更改都已消失。现在我明白什么是分离的头了。但是我如何在这里执行git-rebase-master安全性,而不清除我所做的更改呢?git中的提交是不可变的。如果您从a32b42b123开始并进行了更改,分支的尖端将不再是a32b42b

直到现在,我才意识到我一直在研究分离头(a32b42b123)分支。这家分行跟不上师傅很多。我做了以下的手术,
git签出主机和&git拉取原始主机
git签出a32b42b123和&git重新基础主控程序

要将此分支与master同步,请注意我在此分支中所做的大多数更改都已消失。现在我明白什么是分离的头了。但是我如何在这里执行
git-rebase-master
安全性,而不清除我所做的更改呢?

git中的提交是不可变的。如果您从a32b42b123开始并进行了更改,分支的尖端将不再是a32b42b123,而是另一个提交。如您所见,当您签回该提交时,您将丢失在其上所做的更改

当然,你可以使用分离的头部,但这只是让生活变得困难,没有(好)的理由,尤其是当树枝如此便宜的时候。只需从该提交创建一个命名分支并在其中进行更改:

$git签出a32b42b123-b mybranch
#进行一些更改,提交
$git获取来源
$git重新设置基准源代码/主代码

但这样做会丢失我之前在a32b42b123上所做的更改,对吗?@user2372074提交是只读的。创建分支后,您无法更改它-您可以在分支中进行更改,重新设置分支的基址将保留它们(当然,假设没有合并冲突!)感谢您的回复,重新设置基址后,所有更改都将消失。谢谢,我做了git签出主控和git拉原点主控git签出a32b42b123和git rebase主控@user2372074