在我签出之前的提交后,我可以看到未提交的更改
I can see the uncommited changes after I checkout to an earlier commit
我有一个存储库,它有两个文件:file1
和 file2
。
我对 file2
进行了更改,仅将 file2
添加到暂存区并提交。
然后我对 file1
进行了更改,但我没有将其添加到暂存区或提交更改。
现在我对较早的提交进行结帐。
file2
的更改在结帐后未显示。
但是我可以看到file1
的变化。
在我签出之后,存储库中的所有文件不应该恢复到之前提交的状态吗?
请解释发生这种情况的原因。
您所描述的符合预期。
只要未提交的更改与您正在检出的文件的状态不冲突,它们就会保留在工作树中。
如果它们会发生冲突,或者如果您未提交的更改会在签出时被删除,git 会输出警告并取消操作。
作为旁注,在实际层面上,如果您需要检查较早的提交,尽管工作树中有未提交的更改,您可以 stash 您的更改供以后使用,检查您想要的内容,然后在需要时恢复你的藏品。
我有一个存储库,它有两个文件:file1
和 file2
。
我对 file2
进行了更改,仅将 file2
添加到暂存区并提交。
然后我对 file1
进行了更改,但我没有将其添加到暂存区或提交更改。
现在我对较早的提交进行结帐。
file2
的更改在结帐后未显示。
但是我可以看到file1
的变化。
在我签出之后,存储库中的所有文件不应该恢复到之前提交的状态吗?
请解释发生这种情况的原因。
您所描述的符合预期。
只要未提交的更改与您正在检出的文件的状态不冲突,它们就会保留在工作树中。
如果它们会发生冲突,或者如果您未提交的更改会在签出时被删除,git 会输出警告并取消操作。
作为旁注,在实际层面上,如果您需要检查较早的提交,尽管工作树中有未提交的更改,您可以 stash 您的更改供以后使用,检查您想要的内容,然后在需要时恢复你的藏品。