egit master:master [rejected] github

时间:2012-06-20 06:10:29

标签: git egit

当我尝试将代码推送到github时,有时会遇到一些问题。让我解释一下这个场景:

我只使用master分支(因为我的产品处于早期阶段,现在不需要创建功能分支)。我的远程存储库位于github,我是该项目的唯一人员,因此没有对master分支进行并行修改。

然后我写了一些代码,在我编码的所有测试都是绿色后,我使用egit提交到我的本地存储库和github。没有问题所有的变化都被推送到github,但有时候,不知道究竟是什么原因,因为我的“理论”(或者至少对我来说似乎是这样)egit(实际上是git)不允许我推动改变声称master:master [已拒绝]错误。在推送到窗口我作为源ref和dest ref [master]分支,我添加“所有分支规范”。当然在这种情况下我必须从远程拉出并合并代码,然后再次重新发送。我理解为什么会发生这种情况的理论当前分支落后于远程分支,但是如果我是唯一以线性方式修改代码的人,为什么会这样呢?

它适用于大多数情况,但有时为什么会出现这种错误?我可以理解,如果我们是一个开发团队推动同一个github帐户,但情况并非如此。

1 个答案:

答案 0 :(得分:0)

如果您在主分支上进行rebase或重置,则会发生这种情况。这些操作会更改分支的历史记录,因此github主分支的提示不再位于本地主分支的行中。因此,你得到了被拒绝的#34;错误消息。