ChatGPT解决这个技术问题 Extra ChatGPT

将 GitHub 项目导入 Eclipse

我已经导入了一个 GitHub 项目,但是如何在我的 Eclipse 项目工作区中设置该项目?

在签出项目之前,我是否需要将 GitHub 工作目录(c:\users)设置为我的 Eclipse 工作目录(c:\Projects)?

https://i.stack.imgur.com/Hjc8R.png

编辑:

我的工作目录现在是 c:\users\projectname\.git 所以我尝试使用 eclipse 的“import”选项导入项目。当我尝试导入选择“使用新项目向导”选项时,源代码不会被导入,如果我选择“导入为常规项目”选项导入源代码,但 Eclipse 创建的创建项目不是 java项目。选择选项“使用新项目向导”并使用向导创建一个新的Java项目时,不应该自动导入代码?

https://i.stack.imgur.com/4pxtY.png

有大致相同的问题。我看不到下面是如何回答的。是的,Egit 用户手册描述了如何克隆存储库。 egit 用户手册还描述了显然导致您描述的行为的步骤(在我的情况下,“使用新项目向导”也不会导入源)。我很困惑 egit 中提供的步骤如何产生一个空项目,这是“正常行为”。那么使用来自克隆的本地存储库的源创建项目的“正常行为”在哪里?我试图将我的空项目与存储库同步,但不起作用。
令人沮丧的是,我在文件系统上找到了“已签出”的源(我不知道这是否是正确的 git 术语),并且不记得我做了什么来得到它。有一次,我浏览了本地存储库分支并选择了结帐。 (没想到发生任何事情,我找不到任何取消或撤消签出。)无论源是否存在,创建一个新的 java 项目并将其指向该目录都很容易。

C
Community

Alain Beauvoisanswer 所述,现在(2013 年第四季度)在

Eclipse 的 GitHub

EGit 3.x 手册(“从现有 Git 存储库开始”部分)

Eclipse 与 GitHub

EGit 教程

从 GitHub 复制 URL 并在 Eclipse 中从菜单中选择

File → Import → Git → Projects from Git

https://i.stack.imgur.com/MWw0j.png

如果尚未克隆 Git 存储库:

在>要签出远程项目,您必须先克隆其存储库。
打开 Eclipse 导入向导(例如 File => Import),从 Git 中选择 Git => Projects,然后单击 Next
选择“{4 }”并单击 Next
现在您必须输入存储库的位置和连接数据。输入 URI 将自动填写一些字段。填写任何其他必填字段并点击 Next。如果您使用 GitHub,则可以从网页复制 URI。

选择您要克隆的所有分支并再次点击下一步。点击 Clone... 按钮打开另一个克隆 Git 存储库的向导。

https://i.stack.imgur.com/gvM1X.png

原始答案(2011 年 7 月)

首先,如果您的“工作目录”是 C:\Users,这很奇怪,因为这意味着您已经直接在 C:\Users 中克隆了 GitHub 存储库(即,您在 C:\Users 中有一个 .git 目录)

通常,您会在“any directory of your choice\theGitHubRepoName”中克隆一个 GitHub 存储库。

EGit user Manual page 中所述:

在任何情况下(除非您创建“裸”存储库,但这里不讨论),新存储库本质上是本地硬盘上的一个文件夹,其中包含“工作目录”和元数据文件夹。元数据文件夹是一个名为“.git”的专用子文件夹,通常称为“.git-folder”。它包含实际的存储库(即提交、引用、日志等)。元数据文件夹对 Git 客户端完全透明,而工作目录用于将当前签出的存储库内容公开为工具和编辑器的文件。通常,如果要在 Eclipse 中使用这些文件,则必须以一种或另一种方式将它们导入 Eclipse 工作区。为此,最简单的方法是签入 .project 文件,“导入现有项目”向导可以从中轻松创建项目。因此在大多数情况下,包含 Eclipse 项目的 Repository 的结构看起来类似于以下内容:

另请参阅 Using EGit with Github 部分。

我的工作目录现在是 c:\users\projectname\.git

您应该在 c:\users\projectname 中签出该 repo 的内容(换句话说,您应该拥有的不仅仅是 .git)。

因此,我尝试使用 eclipse 的“import”选项导入项目。当我尝试导入选择“使用新项目向导”选项时,不会导入源代码。

这是正常的。

如果我选择“导入为常规项目”选项导入源代码,但 Eclipse 创建的创建项目不是 java 项目。

又正常了。

选择选项“使用新项目向导”并使用向导创建一个新的Java项目时,不应该自动导入代码?

不,那只会创建一个空项目。
如果该项目是在 c:\users\projectname 中创建的,那么您可以在该项目中声明现有源目录。
因为它与 Git 在同一个工作目录中定义repo,然后该项目应显示为“版本化”。

如果您的 GitHub 存储库对 .project.classpath 文件进行了版本控制,您也可以使用“导入现有项目”选项,但此处可能并非如此。


“如果该项目是在 c:\users\projectname 中创建的,那么您可以在该项目中声明现有源目录。”这是否意味着 Eclipse 工作区目录必须与 Git 工作目录相同?
@user470184:不,Eclipse 工作区可以而且应该位于项目本身的独立位置。
好的,那么如何将 Eclipse java 项目链接到 Git 存储库?您能否详细说明“声明该项目中的 eisting 源目录”。
@user470184:在 stackoverflow.com/questions/251116/…stackoverflow.com/questions/6396349/… 之后,想法是在与 .git 之一相同的父目录中拥有或创建 .project.classpath,然后编辑其属性以引用源目录。该项目的引用将存在于 Eclipse 工作区中。但该项目的实际工作目录将是 .git 所在的位置。
@user470184:参见vogella.de/articles/Eclipse/article.html#firstjava:创建新项目时,您可以指定它需要考虑的源目录。如果您在与包含 .git 的目录相同的目录中创建该项目,并且如果您将其配置为引用来自克隆的 GitHub 存储库的现有源目录,那么您将拥有一个项目,Eclipse 会将其视为版本化 (因为 .git 的存在)
A
Alain Beauvois

使用最后一个 ADT,您可以使用 Eclipse 导入 Github 项目:

File -> Import -> Git -> Projects From Git > URI 输入 Github 存储库 url 选择分支


如果没有找到项目怎么办?
对我来说很好用。简单易记。
它将项目导入 Eclipse,但它不是 Java 项目,仍在苦苦挣扎,如果可以,请提供帮助。 OP准确地描述了我现在面临的情况。
我总是得到一个 TransportError…
b
bomb zj

我也遇到了同样的问题,终于找到了办法:

在 git 视图中添加或创建 git 存储库。单击新建java项目菜单,取消选中“使用默认位置”,选择git repo位置,单击完成。

Ecpise 版本:Mars.2 版本 (4.5.2)


这很简单,对我来说效果很好,除非我不打算为我的项目使用不同的位置。谢谢!
你的意思是 Git 视角?
是的,使用新建项目向导从中导入项目。
C
Community

未解决的核心问题仍然存在:

我的工作目录现在是 c:\users\projectname.git 所以我尝试使用 eclipse 的“import”选项导入项目。当我尝试导入选择“使用新项目向导”选项时,源代码不会被导入,如果我选择“导入为常规项目”选项导入源代码,但 Eclipse 创建的创建项目不是 java项目。选择选项“使用新项目向导”并使用向导创建一个新的Java项目时,不应该自动导入代码?

是的,它应该。

这是一个错误。已报告 here

这是一种解决方法:

作为一般项目导入

注意导入的数据不是有效的 Eclipse 项目(没有可用的构建路径)

在 Eclipse 中打开项目文件夹中的 .project xml 文件。如果看不到此文件,请参阅如何让 Eclipse 显示 .* 文件?。

转到源选项卡

搜索 并将其更改为 org.eclipse.jdt.core.javanature 并保存文件(想法来自这里)

右键单击 src 文件夹,转到 Build Path... 并单击 Use as Source Folder

之后,您应该能够运行和调试项目,还可以通过在包资源管理器中右键单击来使用团队操作。

如果您在运行项目时仍然遇到问题(类似于“找不到主类”),请确保已设置 .project 文件中的 <buildSpec>(如 here 所述):

<buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

感谢您的回答,但在遇到无数问题后,我已经放弃了 egit。我只是在使用 git bash,它很简单,总是可以工作并且不是理想的依赖。如果我早点搬家,会为自己节省很多时间
改变 .project 对我来说还不够。我还必须右键单击项目 > 属性 > 项目分面 > 转换为分面形式
你是什么意思你'只是使用 git bash'?对于我的生活,我根本无法以任何方式将 github/bitbucket 项目导入 Eclipse。我将项目克隆到本地存储库中,然后手动将文件粘贴到 Eclipse 项目中。
问题在 2016/01 年仍然存在。再次来到这里阅读我自己的答案。我太棒了
G
Glorfindel

使用命令行是一种选择,并且可以消除对 Eclipse 插件的需要。首先,创建一个目录来保存项目。

mkdir myGitRepo
cd myGitRepo

在刚刚创建的目录中克隆所需的存储库。

git clone https://github.com/JonasHelming/gitTutorial.git

然后打开 Eclipse 并选择您创建的目录 (myGitRepo) 作为 Eclipse Workspace。

不用担心 Project Explorer 是空的,Eclipse 还不能识别源文件。

最后,创建一个与您拉取的项目同名的新 Java 项目。在这种情况下,它是“gitTutorial”。

File -> New -> Java Project

此时,项目的子目录应该包含从 Github 拉取的文件。请查看我博客中的以下帖子以获得更详细的说明。

http://brianredd.com/application/pull-java-project-from-github


M
M.Usman

它可以通过两种方式完成:

1.使用克隆Git

2.您可以通过重新排列其中给出的文件夹来手动设置它。创建两个单独的文件夹“src”和“res”,并放置适当的类和库提供的 xml 文件。然后从eclipse导入项目并将其作为库,就是这样。


N
Nate Sun

我认为您需要先创建一个分支,然后才能导入本地 Eclipse,否则会出现错误,导致无法从 Github 或 Bitbucket 导入存储库。


c
chmodsss

当本地 git 项目在 eclipse 中被克隆并且可以在 git 透视图中查看但不能在 package explorer(工作区)中查看时,以下步骤对我有用:

在 git 透视图中选择存储库

右键单击并选择导入项目