2

我第一次体验将其他人的更改与 Git 合并(而不是仅仅以一种微不足道的方式自己克隆/推送。)我使用过git pull并且解决冲突的基本过程很简单,那一点似乎工作得很好。

不过,我对我所看到的有点困惑。我确信这是一个非常简单的问题。但是为什么在我从 master 拉取并合并某人的更改后,它显示这些文件在我的分支中“暂存”......即使我根本没有接触这些文件?

例如:另一个人在项目中添加了一个全新的 PNG。当我这样做时,该 PNG 显示为“已添加” git status。我没有这样做git add,合并自动将其放在那里。一切是否真的正常工作,这不会看起来像是来自我的承诺?当我提交和推送时,会有某种差异魔法出现吗?

4

2 回答 2

4

请记住,拉动只是提取+合并。

您需要提交合并。这导致了一种叫做合并提交的东西。合并提交将以您的最新修订和您刚刚提取的修订作为父项。这些文件显示为分阶段,因为它们将包含在合并提交中。

尝试运行git commit,然后使用 eg 查看生成的历史记录gitk

您可以在Git Book中阅读更多关于合并的信息。

于 2012-08-12T19:49:13.250 回答
1

它确实来自您的提交。您的合并提交是将文件添加到您的分支的提交,因为在合并发生之前它不存在。如果并且当您将分支合并mastermaster.

于 2012-08-12T19:53:26.933 回答