【问题标题】:Eclipse/Egit, Push to Remote menu choice is grayed outEclipse/Egit,Push to Remote 菜单选项灰显
【发布时间】:2012-01-06 09:52:09
【问题描述】:

我在 GitHub 上创建了一个存储库。我使用 Eclipse 和 Egit 建立了一个本地 git 存储库。 与Team > Remote > Push。我设法将本地仓库推送到 GitHub 上的仓库。

现在我希望能够使用Team > Push to Upstream(以及从上游获取)作为一键推送(和拉取/获取),但此菜单选项不可用(灰显)。我每次都必须使用Team > Remote > Push 手动填写信息(ctrl+space 有帮助)。

this 之后,我创建了一个远程配置并从存储库视图推送,我可以看到Remotes 下列出的远程GitHub 存储库,但菜单中的Team > Push to Upstream 命令仍然是灰色的。

有人可以告诉我我做错了什么吗?

【问题讨论】:

  • 要解决此问题,请按照其他答案link中报告的步骤进行操作

标签: github egit


【解决方案1】:

这是我所做的,效果很好:

  1. 右键单击您的项目,选择团队→在存储库视图中显示。您将切换视角并进入 Git 存储库选项卡。
  2. 右键单击“远程”并选择“创建远程”。对于“远程名称”,输入“来源”。点击确定。
  3. 单击更改。输入您在初次推送时所做的信息。点击保存。

您现在应该能够通过右键单击您的项目进行推送,然后单击 Team→Push to Upstream。

因为遥控器是在相关项目下添加的,所以每个项目都可以有自己的上游来源并且它们不会干扰(而 Window > Preferences 解决方案是全局设置)。

根据您对所做操作的描述,您似乎尝试了此操作 - 但可能没有使用遥控器的名称“origin”,这是绝对必要的。我偶然发现了这个解决方案。

【讨论】:

  • 这也适用于设置拉!只需在第 2 步后选择“Configure fetch”,然后单击“ok”,然后转到第 3 步。
  • 感谢 Derrick 让我免于头痛! :) 工作完美!
  • 此解决方案等效于大多数“团队 -> 共享项目...”流程与其他源代码控制的工作方式。如果 EGit 允许您在共享项目时共享到远程存储库,那就太好了,但它是一个两步过程 - 1. 共享项目并创建一个新的本地存储库,2. 为本地存储库配置远程。我猜这就是 Git 的工作原理。
【解决方案2】:

我遇到了这个问题,幸好找到了重新启用“推送到上游”选项的方法。

  1. 转到 Window > Preferences > Team > Git > Configuration
  2. 选择存储库设置选项卡,然后选择代表您项目的存储库。
  3. 点击“新建条目...
  4. 密钥是remote.origin.url
  5. 该值是您从 github 复制的 url。它通常主要在您注册的任何网站上提供。

也许有一种更简洁的方法可以实现相同的目标。一旦我到达这么远,我就停止寻找,因为它现在可以工作了。

【讨论】:

  • 感谢发条!这对我来说非常有效!甚至不必反弹 Eclipse。 OP应该批准这个答案。 ://
  • Derrick 的回答(比这个晚发布)是一种更快的方法。
【解决方案3】:

您需要在该存储库的 .git/config 文件中具有以下类型的配置:

[branch "master"]
    remote = origin

remote 设置可以是您的任何遥控器,也可以只是 . 的值

您可以通过在 Git 存储库 视图中从存储库的上下文菜单中选择 Properties 菜单项来编辑存储库的配置。

【讨论】:

  • 好的,谢谢。可能我不明白“远程设置可以是什么”的意思。正如您所建议的,我尝试了所有我能想到的东西,包括一个点,但无济于事。无论我在 git 版本控制下放置什么项目,Eclipse 都不会给我 Team > Fetch from Upstream 或 Push to Upstream 命令。我猜 Eclipse+Git 不适合我。这么多摆弄......
【解决方案4】:

我来这里是为了寻找解决方案来解决与 bitbucket 类似的问题 - 尽管两个最高票的答案都没有对我有用,但证明我有选项“Put branch ...”,当我尝试这样做时这个,它说“非快进”,但是当我成功“拉”时,我能够推到上游。

也许它会帮助某人:)

【讨论】:

    【解决方案5】:

    这篇文章可能有点旧,但我的一个仓库也遇到了同样的问题,此链接中的以下信息对我有用:Adding a remote to an existing git repo

    我想从那篇文章中强调的部分如下:

    [branch "master"]
    remote = origin
    merge = refs/heads/master
    

    当我在 .git/config 中进行更改并刷新 eclipse 时,“推送到上游”链接对我有用。请记住,我假设您在 Git 透视图中为远程存储库配置了远程。

    【讨论】:

      【解决方案6】:

      在我的情况下,所有 git commit/push 操作都处于非活动状态。我通过将存储库文件夹放在 git 目录下解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2018-03-04
        • 2012-08-31
        • 2011-02-14
        • 2013-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-30
        • 1970-01-01
        相关资源
        最近更新 更多