4

在 GitHub 上有一个 repo 。

我已经从两台不同的机器推送到这个 repo,所以现在一台机器是最新的,另一台机器的代码已经过时。现在,我在代码过时的机器上,我想从 GitHub 中提取 master/HEAD/whatever。

然后我开始盯着这个:

在此处输入图像描述

我不想做一些愚蠢的事情,比如从 Eclipse 中删除项目,然后从 GitHub 中提取所有代码。

有人可以帮我合并/同步项目吗?这听起来很简单。

不幸的是,当我在上面的菜单中单击“拉”时会发生这种情况:

在此处输入图像描述

有人还会解释拉,合并,获取和同步之间的区别吗?

4

1 回答 1

4

eGit 不知道您想从哪个远程分支中提取。如果您基于远程跟踪分支创建本地分支,则会自动生成密钥。否则,您必须自己创建它:

branch.master.merge=refs/heads/master
branch.master.remote=origin

其中 master 代表branchname,在 key 中它是您的本地分支,在 value 中它是远程存储库中的分支。将其放在特定于存储库的配置文件中%repositorypath%\.git\config

至于条款:

  • merge: 将两个或多个开发历史连接在一起
  • fetch:从另一个存储库下载对象和引用
  • pull:从另一个存储库或本地分支获取并合并
  • sync:允许您比较 2 个分支

一般来说,我强烈建议您阅读 eGit 用户指南,在那里您可以更好地了解 Git 和 eGit。它可以在http://wiki.eclipse.org/EGit/User_Guide找到

于 2013-09-18T03:32:46.493 回答