导读:本篇主要介绍如何使用EGit下载GitHub上已存在的库。如果不是为了下载一个Java Project,直接在Eclipse中导入使用,那可以使用GitHub的桌面程序(GitHub for Windows),这个上传下载文件更方便。建议看这篇文章之前先看这篇 —— GitHub的使用(上)http://www.cnblogs.com/memory4young/p/github-create-upload-update.html

  首先要确保Eclipse已经安装了GitHub的插件,即EGit。有关该插件安装请参考 GitHub的使用(上)

  还有一点,确保你的GitHub的库中有 .project 这个文件,否则Eclipse不知道它是一个Project,也就无法导入,但可以作为普通文件下载下来。

  在Eclipse的Package Explorer栏空白处 右键 - Import ,选择 Git - Projects from Git ,点击 Next

  接下来选择 URI ,点击 Next

  在下图中的“URI”栏里填入你的远程库HelloWorld的地址(详细可参考 GitHub的使用(上)

  User和Password栏里填入GitHub的账号和密码

  以下几步都可用默认值,直接 Next

  针对下图,笔者想特别说明下。因为笔者在这遇到了问题。

  注:请确保你的GitHub上的库名和项目名称是一样的。笔者的库名为HelloWorld,而当初在Eclipse中创建的项目名称为HelloWorld4GitHub。所以导致在这一步总是报错。

  解决办法:

  办法1、到GitHub主页上点击 Admin 按钮,修改库名称

  办法2、到GitHub主页找到.project文件,修改它的<name>节点

  另外还有一点想说明的,如果你的远程库里面没有 .project 文件,是不可能导入成功的。直接 Cancel 掉。到你的Eclipse的工作目中看看,是不是已经有 HelloWorld 的文件夹了。也就是说到这一步,库文件已经被下载下来。只是因为没有Project的标识文件,Eclipse无法识别。

  项目导进来后,发现报错。再看它的目录结构,你会发现没有JDK的包。

  没有咱就加啊!

  选中项目,右键 > Build Path > Add Libraries ,加入你本地的JDK环境即可。

  加上后,发现它还是报错。原因是Eclipse将src这个目录当成了普通的文件夹,而不是Java的source目录。

  怎么将一个普通的Folder转换成Java的Source Folder呢?

  选中src目录,右键 > Build Path > Use as Source Folder

  (注:如果定义了包,即package,首先 右键 > Build Path > Exclude,然后再 Use as Source Folder

  OK,项目可以正常使用了。你可以试一下同步。关于同步的详细请参考:GitHub的使用(上)


PS: 如果出现类似 git-upload-pack not found 这样的错误信息,可参考  EGit 在使用时出现 git-upload-pack not found 的错误

  官方参考文档:http://wiki.eclipse.org/EGit/User_Guide

GitHub的使用(下)—— 如何下载一个已存在的 Repository的更多相关文章

  1. 对于一个web工程,如果我们复制一个已有的工程粘贴到同一个workspace下,我们除了需要更改工程的名字还需要更改这个新工程的content root,否则会报错。

    对于一个web工程,如果我们复制一个已有的工程粘贴到同一个workspace下,我们除了需要更改工程的名字还需要更改这个新工程的content root,否则会报错.步骤如下: 右键新的工程---&g ...

  2. lunix或者centos服务器下如何下载自己在github上面的项目代码

    1.在github找到项目压缩包下载地址 打开自己的github主页找到需要下载的项目首页,如图所示,找到zip下载地址(ps:如何找这个地址我就不多说了,了解过一点html的同学肯定很容易可以找到) ...

  3. ubuntu上建立本地git 和 网络 github的上传与下载

    github工具是一个很好用的工具,可以在本地建立一个git仓库,存储当前写的程序或者数据,然后通过ssh与github建立联系.具体怎么实现,下面进行介绍. 1.首先要安装git 软件 在Linux ...

  4. Linux下校验下载文件的完整性(MD5,SHA1,PGP)

    查看: Linux下校验下载文件的完整性(MD5,SHA1,PGP) http://blog.useasp.net/archive/2014/03/29/use-md5-sha1-or-pgp-to- ...

  5. Github 初识(上传、下载)

    Git - 版本控制工具Github - 一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等GitLab - 基于Git的项目管理软件   上传 1 首先在Github 上注册一 ...

  6. Linux下多线程下载工具myget

    [root@superdba ~]# mytgetMytget 0.0.99: A download accelerator for GNU/LinuxUsage: mytget [options]. ...

  7. 安装rpy2 报错<cdef source string>:23:5: before: blah1 解决办法就是直接下载一个rpy2的轮子

    win7上安装rpy2, python环境是3.6.1. 使用pip install rpy2直接安装rpy2,对应的版本时rpy2 3.0.5 报如下错误: ERROR: Complete outp ...

  8. 解决访问github等网站慢或下载失败的问题

    最近老大push项目,正常的git clone每次都是下载一部分就断掉了.下面介绍网上找到的两种方法: 方法一: 1.打开网站https://www.ipaddress.com/: 2.分别在上面打开 ...

  9. android studio 导入一个已有的android studio project作为lib使用

    android studio 导入一个已有的android studio project作为lib使用 新项目来了. 需要搭建框架. android studio对我来说还是很陌生,之前一个项目在同事 ...

随机推荐

  1. python 关键字参数

    原文地址:http://docs.pythontab.com/python/python3.4/controlflow.html#tut-functions 函数可以通过 关键字参数 的形式来调用,形 ...

  2. Phpstorm开发记

    Phpsotrm虽然付费项目,但网上有免费的激活码,也可以免费用不是. 1.首先是svn,windows项目下用Phpsotrm需要安装svn时,支付svn命令的,否则会提示找不到svn命令.2.建项 ...

  3. 01.Redis安装

    1.安装Redis 1.下载.解压Redis [lizhiwei@localhost Redis]$ ll total 1248 -rwxrwxr-x. 1 lizhiwei lizhiwei 127 ...

  4. if in hlsl

    seems that in HLSL_4, we can use if https://msdn.microsoft.com/en-us/library/bb313972(v=xnagamestudi ...

  5. ASP.NET运行机制之一般处理程序(ashx)

    一. 概述 新建一个ashx文件  代码如下 <%@ WebHandler Language="C#" Class="TestHandler" %> ...

  6. Web Component 文章

    周末无意中了解了Web Component的概念. http://blog.amowu.com/2013/06/web-components.html http://www.v2ex.com/t/69 ...

  7. 快钱报错:javax.net.ssl.SSLProtocolException: handshake alert: unrecognized_name解决

    jdk1.7提示:javax.net.ssl.SSLProtocolException: handshake alert: unrecognized_name //方案1:设置系统属性:System. ...

  8. Sqli-labs less 38

    Less-38 学习了关于stacked injection的相关知识,我们在本关可以得到直接的运用. 在执行select时的sql语句为:SELECT * FROM users WHERE id=' ...

  9. iOS多线程的初步研究(五)-- 如何让NSURLConnection在子线程中运行

    可以有两个办法让NSURLConnection在子线程中运行,即将NSURLConnection加入到run loop或者NSOperationQueue中去运行. 前面提到可以将NSTimer手动加 ...

  10. 项目上线与LOG记录

    如果项目上过线的话,那你一定知道Log是多么重要. 为什么说Log重要呢?因为上线项目不允许你调试,你只能通过Log来分析问题.这时打一手好Log的重要性绝不亚于写一手好代码.项目出问题时,你要能拿出 ...