Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse 不能推,不能拉_Eclipse_Git_Egit - Fatal编程技术网

Eclipse 不能推,不能拉

Eclipse 不能推,不能拉,eclipse,git,egit,Eclipse,Git,Egit,我正在使用EGit,并对本地git存储库进行了更改 我想把这变化推到遥控器上。 进行此操作时,会弹出一个对话框屏幕,其中显示。这个关联问题的答案是我必须先拉 执行拉取时,会引发EGit异常: org.eclipse.jgit.api.errors.TransportException: Nothing to fetch. at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:139) at org.eclipse.

我正在使用EGit,并对本地git存储库进行了更改

我想把这变化推到遥控器上。 进行此操作时,会弹出一个对话框屏幕,其中显示。这个关联问题的答案是我必须先拉

执行拉取时,会引发EGit异常:

org.eclipse.jgit.api.errors.TransportException: Nothing to fetch.
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:139)
    at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:253)
    at org.eclipse.egit.core.op.PullOperation$1.run(PullOperation.java:97)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
    at org.eclipse.egit.core.op.PullOperation.execute(PullOperation.java:128)
    at org.eclipse.egit.ui.internal.pull.PullOperationUI.execute(PullOperationUI.java:139)
    at org.eclipse.egit.ui.internal.pull.PullOperationUI$1.runInWorkspace(PullOperationUI.java:114)
    at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.eclipse.jgit.errors.TransportException: Nothing to fetch.
    at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1087)
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:130)
    ... 8 more
我好像被卡住了。谁能帮我?


更新

我的存储库中的
.git/config
文件包含(远程URL hid):

[core]
repositoryformatversion=0
filemode=true
裸=假
logallrefupdates=true
ignorecase=true
[分行“主控”]
远程=原点
合并=参考/头/主
[远程“源”]
url=

我使用的是Eclipse Git Team Provider 3.4.1.201406201815

存储库的配置似乎遗漏了
[remote“origin”]
部分中的这一行:

fetch=+refs/heads/*:refs/remotes/origin/*

它告诉git获取以
refs/heads/
(所有分支)开头的所有ref,并将它们本地存储在
refs/remotes/origin/
下。例如,远程存储库中的
refs/heads/master
将成为本地的
refs/remotes/origin/master
(简称
origin/master

你能加上它,试试看它是否能起到拉动作用吗


另外,了解您第一次以何种方式创建/克隆此存储库将非常有趣。

我在使用egit时也遇到了同样的问题,无法提取更改。但前面的答案帮助很大。现在,有两种方法可以更新配置文件

  • 文件中的直接更新:转到local_repo_location/.git/并打开配置文件并添加:

    [远程“源”]

    url=您的回复url

    推送=已填充值

    fetch=+refs/heads/:refs/remotes/origin/

  • 使用eclipse更新配置:转到Windows->Preferences->Team->Git->Configuration,现在在Repository Settings选项卡下查看->remote->origin。 问题是没有用于获取的密钥。 现在单击:添加条目并提供如下值:

  • 键:remote.origin.fetch

    值:+refs/heads/:refs/remotes/origin/


    现在我们完成了。

    从远程回购中提取数据时遇到了相同的问题,并给出了错误(org.eclipse.jgit.api.errors.transportexception)

    这就是我所做的

  • 将原始帐户更改为我的fork帐户并拉取
  • 将原点更改回实际值并拉取

  • 我真的不知道egit的问题,但这两个简单的步骤解决了我的问题,希望对我有所帮助

    谢谢,这很有效。这一行实际上做了什么(我猜它定义了远程和本地回购之间的拉动规则)。我记不清我是以何种方式创建回购协议的,但是,我知道[remote“origin”]部分是空的,我手动添加了url属性。耶!我对答案作了解释。嗯,我真的很想知道你怎么会得到一个空的远程部分。在[remote“origin”]下,我有正确的url行,但就是这样,没有获取行。无论如何,你的答案在硬重置后解决了这个问题。谢谢@罗宾斯特-我知道这个问题/评论很老-但我昨天也有同样的问题。我从Eclipse中创建了克隆,但遇到了这个问题。当我使用命令行Git在外部克隆它时,它没有问题。
    [core]
      repositoryformatversion = 0
      filemode = true
      bare = false
      logallrefupdates = true
      ignorecase = true
    [branch "master"]
      remote = origin
      merge = refs/heads/master
    [remote "origin"]
        url = <URL_HIDDEN>