导读:本篇主要介绍如何使用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. bzoj 1028 暴力枚举判断

    昨天梦到这道题了,所以一定要A掉(其实梦到了3道,有两道记不清了) 暴力枚举等的是哪张牌,将是哪张牌,然后贪心的判断就行了. 对于一个状态判断是否为胡牌,1-n扫一遍,然后对于每个牌,先mod 3, ...

  2. js实用功能

    //日期格式转换 Date.prototype.format = function (format) {     /*      * eg:format="yyyy-MM-dd hh:mm: ...

  3. jQuery中的height()、innerheight()、outerheight()的区别总结

    在前端jQuery代码中突然看到outerheight(),第一感觉就是,这是什么鬼?然后仔细查阅了一下,居然发现还有这么多相似的东西. 在jQuery中,获取元素高度的函数有3个,它们分别是heig ...

  4. RCC 2014 Warmup (Div. 2)

    一场很很多HACK的比赛,PREtest太弱了,真的很多坑!平时练习的时候很少注意这些东西了! A:开始一直在模拟,后来发现自己的思路逻辑很乱,果然做比赛不给力! 直接在代码中解释了 #include ...

  5. 为什么主流网站无法捕获 XSS 漏洞?

    二十多年来,跨站脚本(简称 XSS)漏洞一直是主流网站的心头之痛.为什么过了这么久,这些网站还是对此类漏洞束手无策呢? 对于最近 eBay 网站曝出的跨站脚本漏洞,你有什么想法?为什么会出现这样的漏网 ...

  6. acdream1116 Gao the string!(扩展KMP)

    今天是字符串填坑的一天,首先填的第一个坑是扩展KMP.总结一下KMP和扩展KMP的区别. 在这里s是主串,t是模式串. KMP可以求出的是以s[i]为结尾的串和 t前缀匹配的最长的长度.假如这个长度是 ...

  7. Javascript Arguments,calle,caller,call,apply

    一.Arguments 该对象代表正在执行的函数和调用他的函数的参数. [function.]arguments[n] 参数function :选项.当前正在执行的 Function 对象的名字. n ...

  8. DBCP参数介绍

    参数分步介绍1)数据库连接相关    username="v10"    password="v10"    driverClassName="ora ...

  9. UVA 11133 - Eigensequence DP

    Given an increasing sequence of integers a1, a2, a3, . . . , ak, the E-transform produces a sequence ...

  10. Java集合框架(二)

    Set Set:无序,不可以重复元素. |--------HashSet:数据结构是哈希表. 线程是非同步的.保证元素唯一性的原理是:判断元素的hashCode值是否相同,如果相同,还会继续判断元素的 ...