如何将Eclipse项目推送到Github

3

我是Git和Github的新手,正在尝试从Eclipse(Windows)将内容推送到Github的根目录。

我创建了一个名为MyProject的Github项目。 MyProject是一个具有常规Android目录结构的Android项目:

  • MyProject
  • src(+ res,assets等)

我从Eclipse中将名为MyGame的Android项目推送到MyProject。 现在,MyProject成为MyGame的子目录,因此,除非用户首先单击Github上的MyProject以在目录层次结构中向下钻取一级,否则MyProject中的自述文件不可见。

如何推送MyGame,使其内容(src文件夹,res文件夹,自述文件)在Github项目的根目录中可见。

更新:我尝试使用命令行:

git remote add origin git@github.com:username/reponame.git
git push origin master

这个操作的结果是一样的,但在Github上,目录结构如下:

  • MyProject
  • MyGame
  • src

如何才能将它变成这样:

  • MyProject
  • src


你是在使用Linux还是Windows操作系统?你确定不想使用终端或命令行吗? - Shobhit Puri
除了上面的问题,你是在使用eGit或者任何Eclipse插件来管理Git吗? - wtsang02
Windows。如果有命令行解决方案,我会尝试一下。 - Pierre Rymiortz
我正在使用Eclipse的eGit插件。 - Pierre Rymiortz
1个回答

8
我认为你的问题可能是Eclipse中Git仓库在项目的父文件夹中。你需要的是让Git仓库在项目文件夹中。
现在,Eclipse似乎建议将Git仓库设置在项目的父文件夹中。我猜这样做是为了以后容易将相关项目添加到Git仓库中。如果你不担心这个问题,只想按照你描述的方式解决问题,请参考以下步骤。
请注意,我正在使用Ubuntu Linux,所以我的Eclipse和桌面可能与你的不同。
首先,我们将确定我的问题猜测是否正确:
  1. 在Eclipse中打开"Git Repository Exploring"视图。
  2. 查看“Git Repositories”视图。查看仓库的路径是否指向包含您项目的文件夹。如果是,请继续执行以下步骤。
如果您的仓库在项目的上一级文件夹中,则问题如下:当您将其推送到GitHub时,Git会相对于仓库本身重新创建仓库中的所有路径。如果它在项目的上一级文件夹中,则所有路径都将包括包含项目的文件夹。因此,您需要将仓库移动到包含项目的文件夹中。请参照以下步骤进行移动。
  1. 首先,您需要确保没有未提交的更改或任何存储的更改(如果您不知道存储的更改是什么,不用担心)。
  2. 作为预防措施,如果当前代码和仓库非常重要,您可能需要创建一个完整副本。
  3. 打开Windows资源管理器并导航到包含Git仓库的文件夹,根据“Git仓库”视图中给定的路径。
  4. 此时,为避免更改引起干扰(虽然它们不应该会),您可能希望关闭Eclipse。
  5. 如果您在Windows资源管理器中可以看到.git文件夹,则继续执行下一步。如果没有,请显示隐藏文件。http://windows.microsoft.com/zh-cn/windows/show-hidden-files#show-hidden-files=windows-7提供了针对Win7的说明。
  6. 现在,您应该能够看到.git文件夹。将其复制到项目文件夹中。
  7. 启动Eclipse(如果已关闭)并再次打开“Git仓库”视图。
  8. 单击添加现有本地Git存储库的按钮。选择项目文件夹。
  9. 返回正常的Eclipse Java透视图。右键单击您的项目,选择“Team”> “断开连接”,以暂时停止关注旧存储库。
  10. 再次右键单击该项目,然后选择“Team”> “共享项目...”。在提示输入存储库时,请选中使用位于项目/父文件夹中的存储库的复选框。在下面的视图中,选中直接位于项目文件夹内的那个(它可能在一个带有点的文件夹旁边)。然后点击“完成”按钮。
  11. 现在,您可能需要做很多补救工作。Git会认为您已删除了项目中的每个文件,并用具有更少层目录路径的文件替换了它们。您需要提交所有这些更改以获得干净的仓库。
  12. 将第十步中的更改推送到GitHub,并检查其外观是否符合预期。

希望这可以帮助您。如果有不清楚的地方或其他问题,请留言。在尝试此操作之前,请务必备份...我没有完全测试过它,不想引起任何不必要的烦恼。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接