如果我签出标签并提交,我的提交在哪里?

时间:2012-08-08 15:33:58

标签: git

在GIT中,如果我签出一个标签,我会得到我的工作副本到该标签的参考,即代码将代表我当时所拥有的。我是对的吗?

现在,如果我这样做,并修改我的代码并提交。这个提交在哪里?它会“自动合并”吗?这意味着,如果我推送我的提交,克隆回购的人也会得到我从标签做的修复?或者,如果我切换回主人,我可以在那里修改代码吗?

2 个答案:

答案 0 :(得分:2)

提交仍然只存储在本地。只有您对修改后的版本有引用。如果您想让其他人可以使用它,您还必须将git push代码添加到给定分支。

您的提交是特定于分支的,这意味着如果您在提交后更改分支,则您的更改将不会继续。但是,当您更改回分支时,提交仍将存在。

答案 1 :(得分:2)

它不会“自动合并”。它存储在存储库中,由HEAD直接引用。通常,引用HEAD(.git中的小文件,名为HEAD)包含分支的名称,每次提交都会更新top-commit引用。在你的情况下,它是一个所谓的“分离的HEAD”。

您始终可以将分离的HEAD保存在真实的分支引用中:git branch something。或者只是检查另一个分支并忘记提交,它们最终会被清理。