我从我的分店拉出来:
git checkout mybranchSample git fetch git pull origin master
然后,Git给了我以下消息:
请输入提交消息以解释为何需要此合并,
特别是如果它将更新的上游合并到主题分支中
输入提交消息后,它会合并master
到我的文件中.即使我没有处理过某些文件master
,它也会在我输入时以绿色显示文件列表git status
.
这个问题不是我的同事发生的,而是我.这背后的原因是什么?
git pull
基本上是一次两个动作:git fetch
后跟一个git merge
(除非你使用git pull --rebase
,在这种情况下你可以猜出会发生什么).
你看到这个的原因是因为Git无法像大多数时候那样进行快进合并.这样做的原因通常是因为你已经git commit
在本地尝试了你想要提取的分支,现在你需要将远程更改与本地更改合并.
值得注意的是,Git为您预先填充了合并消息,因此您不需要输入任何内容.只需保存并退出,合并即可完成.(当然,除非存在合并冲突).
Linus Torvalds解释得最好:
传播关于即将到来的'git'UI变化的消息,因为我很大程度上应该受到指责.
这种变化有望使人们编写合并消息来解释他们的合并,甚至可能在没有必要时决定不合并.
我过去几周一直在使用那个git功能,它导致我从子维护者的合并中有各种注释(好吧,至少如果子主机给了我任何东西).所以我试图以身作则.
但如果你不喜欢解释你的合并,这可能会很烦人.当然,如果你不解释你的合并,你很烦人,所以它最终都是平衡的."Karmic balance",所以说.
资料来源:https://plus.google.com/+LinusTorvalds/posts/SrePhcj6XJe