如何将代码更改从 Eclipse 提交到 GitHub

Posted

技术标签:

【中文标题】如何将代码更改从 Eclipse 提交到 GitHub【英文标题】:How to commit code changes from Eclipse to GitHub 【发布时间】:2018-08-11 10:52:30 【问题描述】:

我尝试将整个项目文件夹提交到我的 Github 存储库: https://github.com/rahul-raj/SpringBoot

但是,当我尝试“提交并推送”时,我收到“master denied non fast forward”错误:

我尝试了 pull/fetch,但它也不起作用,出现“nothing to fetch”错误:

当我尝试提交和推送项目时,现在它显示“要提交的更改为 0”,但没有此类项目上传到我的 Github 存储库。 有人能告诉我如何解决这个问题并将项目推送到我的 Github 吗? 我正在查看几个相关的 Stack Overflow 帖子,但没有任何东西可以解决我的问题。如何通过 STS/EFclipse 本身解决此问题?

【问题讨论】:

您的本地历史记录是否以提交 622c4d5cc2c5d96718bc867a62bb63f3f94f4ac87aed4acb16d25c9c52f0783361ddf1fadf1f9bba 开头?可能不是,您必须在 Push Branch 对话框中选择选项 "Force overwrite branch.."。也许你需要先allow force push。 @howlger 太棒了,成功了!非常感谢! @howlger 但是我在目录中列出的其他项目被删除,当前项目被推送。 “合并”选项是否有用?还是必须是“变基”? i.imgur.com/el3MbMF.png 您应该已经在之前克隆的 git 存储库中与另一个项目一起创建了新项目(或者在强制推送之前合并不相关的历史记录)。不幸的是,力推的历史覆盖了另一个项目。 @RahulRaj 您的问题已经解决了吗?如果是,您可以将其标记为答案。它也将使有类似问题的其他人受益。 【参考方案1】:

可能您的本地历史记录与已经存在的远程历史记录不同(例如,由对已推送提交的修改提交引起)。

在这种情况下,推送分支对话框中,您必须选择选项在远程强制覆盖分支如果它存在并且已经发散。也许您需要先在您的 GitHub 存储库中 allow force push。

【讨论】:

如果我们在远程覆盖分支,是否会删除存储库中列出的其他项目并推送项目? @RahulRaj 不幸的是,是的(请参阅我对上述问题的评论)。每个分支只有一个历史记录,没有项目的概念,而是 Git 中所谓的submodules。

以上是关于如何将代码更改从 Eclipse 提交到 GitHub的主要内容,如果未能解决你的问题,请参考以下文章

如何提交无更改和新消息?

将代码从 Eclipse 提交到 Git 存储库时无法连接到任何 URI 错误

是否可以将所有选定的项目从 Eclipse 提交到一个 github 存储库

是否可以将所有选定的项目从Eclipse提交到一个github存储库

eclipse 中怎么fetch代码

Eclipse 中svn的合并与同步