0

我正在为我的组织创建一个全新的 OSS 项目,我想将它托管在 GitHub 上。该项目将使用 Eclipse 开发,我正在使用 EGit。我以前没有使用 Git 的经验,因为我以前只使用过 SVN。

这是我到目前为止所做的:

  • 在 GitHub 上为我的组织创建了一个新帐户。(我已经有一个个人帐户。)
  • 在我组织的 GitHub 帐户下为此项目创建了一个新存储库。
  • 在新存储库的“合作者”部分下,添加了我的个人帐户。(我在我的个人帐户中验证了这一点。)
  • 将 EGit 安装到我的 Eclipse 中。(我使用 Eclipse 4.2 和 EGit 2.0.0)
  • 在新的 Eclipse 工作区中创建了一个新的 Eclipse 项目。(这是一个 Maven 项目,所以我通过 m2e 创建了它,但这应该没什么区别。)
  • 将新的 Eclipse 项目添加到新的 Git 本地存储库(通过团队 -> 共享项目)。
  • 创建了 .gitignore(忽略 Eclipse 特定的文件和目录)。
  • 向项目添加了源代码(通过团队 -> 添加到索引)。
  • 将本地更改提交到我的本地存储库。
  • 从 GitHub 复制 HTTPS URL。
  • 团队 -> 远程 -> 推送
  • 剪贴板中的 URL 已被获取,并且大多数字段都已填充。
  • 输入我的 GitHub 个人账户的用户名和密码,点击下一步,数据获取成功。
  • 从 Source ref 下拉列表中选择“refs/head/master”(我不明白整个页面,也许我写错了?)
  • 单击“添加规格”,然后单击下一步

此时,我收到错误“master:master [rejected - non-fast-forward]”

我在谷歌上搜索,但建议的解决方案是做一个拉。我尝试了“Team -> Pull”,但收到错误“当前分支未配置为 pull;在配置中找不到 key branch.master.merge 的值”

谁能帮我?我的远程仓库仍然是空的(除了 .gitignore 和 README.md)。我想从本地获取文件到远程仓库!

4

1 回答 1

0

看起来您的 Github 存储库中已经有提交的内容。我不完全知道出了什么问题,但我会做不同的事情:

  • 首先在 Eclipse 中安装 Mylyn 和 Mylyn GitHub 连接器。这样您就可以更轻松地访问 github 存储库。
  • 使用 Mylyn Github 连接器将现有(假定为空)Github 存储库克隆到新的本地存储库(文件->导入->Git->从 Github)。这是验证您的登录凭据、ssh 密钥等的最简单方法。
  • 在上一个克隆步骤中,github 存储库被自动添加为本地存储库的“上游”存储库引用。因此,如果您现在将文件添加到本地存储库,您可以提交它们,然后使用“推送到上游”使它们在 Github 上可用。在这种情况下,不需要配置遥控器和 refspecs。
  • 现在创建新的 Eclipse 项目并使用 Team -> Share 共享它,您可以在其中选择现有的本地存储库。

除此之外的一切都将如您已经描述的那样。

于 2012-06-29T16:51:11.527 回答