在 egit 中被拒绝非快进问题

问题描述 投票:0回答:4

我已经从分支2.0结账了。

现在我对其中一个文件进行了更改。
我想将其提交到分支,即 2.0 分支,
所以我右键单击文件,选择团队->提交选项 我要求我选择分支。

所以我选择了 2.0 和存储库 url。 当我单击下一个框上的

commit & push
时,它会给我确认框,预期推送结果为 2.0 [拒绝-非快进]。

是因为我是develop组而不是master的原因吗?
我还可以对本地提交进行更改,但它没有反映在主副本中,因此他们可以通过任何方式将其提交到主副本中。

附上确认框截图。

eclipse git egit
4个回答
7
投票

我在我的 Eclipse 项目中遇到同样的问题,我尝试拉出所有提交,然后重试推送


2
投票

是的。

您尝试将代码从不同的分支推送到主分支,但您不能。

如何解决?

# commit all your changes to the desired branch (develop is i understand you correctly)

# checkout the master branch
git checkout master

# merge the changes from develop into master
git merge develop

# now push the changes
git push origin master.

git merge 创建了一个新的合并提交,现在您可以将其推回 master。


0
投票

对我来说..Rebase有效。之后我就能够将我的更改推送到存储库。


0
投票

显示此错误是因为本地系统中的工作版本与 GIT 上的提交版本之间存在差距。所以对于这个问题,你必须将本地版本更新到当前版本的GIT。之后,您可以提交并推送您的代码。

注意:请在其他位置备份您的更改,以便将它们再次粘贴到本地项目中。

您必须遵循几个步骤。

1)使用软重置回滚 - 转到历史记录(其中显示所有以前提交和推送的版本)

Soft reset

现在您的系统处于之前的状态(提交更改之前)

2) 变基 - 现在,您可以使用变基选项将本地系统变基为 GIT 上提交的当前版本。 (在 rebase 选项中它已经显示了 GIT 最新提交的更改)

Rebase part 1

Rebase part 2

3)推送并提交 - 将更改备份粘贴到本地项目中。然后您的项目(右键单击)> 团队 > 提交。最后,选择提交和推送选项,您的更改将继续在 GIT 上。

:)

© www.soinside.com 2019 - 2024. All rights reserved.