GitHub的使用(下)—— 如何下载一个已存在的 Repository
导读:本篇主要介绍如何使用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的更多相关文章
- 对于一个web工程,如果我们复制一个已有的工程粘贴到同一个workspace下,我们除了需要更改工程的名字还需要更改这个新工程的content root,否则会报错。
对于一个web工程,如果我们复制一个已有的工程粘贴到同一个workspace下,我们除了需要更改工程的名字还需要更改这个新工程的content root,否则会报错.步骤如下: 右键新的工程---&g ...
- lunix或者centos服务器下如何下载自己在github上面的项目代码
1.在github找到项目压缩包下载地址 打开自己的github主页找到需要下载的项目首页,如图所示,找到zip下载地址(ps:如何找这个地址我就不多说了,了解过一点html的同学肯定很容易可以找到) ...
- ubuntu上建立本地git 和 网络 github的上传与下载
github工具是一个很好用的工具,可以在本地建立一个git仓库,存储当前写的程序或者数据,然后通过ssh与github建立联系.具体怎么实现,下面进行介绍. 1.首先要安装git 软件 在Linux ...
- Linux下校验下载文件的完整性(MD5,SHA1,PGP)
查看: Linux下校验下载文件的完整性(MD5,SHA1,PGP) http://blog.useasp.net/archive/2014/03/29/use-md5-sha1-or-pgp-to- ...
- Github 初识(上传、下载)
Git - 版本控制工具Github - 一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等GitLab - 基于Git的项目管理软件 上传 1 首先在Github 上注册一 ...
- Linux下多线程下载工具myget
[root@superdba ~]# mytgetMytget 0.0.99: A download accelerator for GNU/LinuxUsage: mytget [options]. ...
- 安装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 ...
- 解决访问github等网站慢或下载失败的问题
最近老大push项目,正常的git clone每次都是下载一部分就断掉了.下面介绍网上找到的两种方法: 方法一: 1.打开网站https://www.ipaddress.com/: 2.分别在上面打开 ...
- android studio 导入一个已有的android studio project作为lib使用
android studio 导入一个已有的android studio project作为lib使用 新项目来了. 需要搭建框架. android studio对我来说还是很陌生,之前一个项目在同事 ...
随机推荐
- C++ Templates基本知识
一.使用Templates的原因:例如我们要写一个算法,由于类型不同,我们不得不做一下工作.1.使用宏定义代替Templates不利于类型检查. 2.将一些算法放在基类里,以后的扩展的子类都需要充基类 ...
- TEST ON 平安夜
1.前言 = = 感觉自己其实没发过关于考试的博客过... 今天是一个平安的夜晚,漆黑的夜被霓虹划分成网络,很适合发题. 2.num9九数码问题 传统8数码改一下...只询问一个状态,所以很容易搞,正 ...
- 【HDOJ】【3480】Division
DP/四边形不等式 要求将一个可重集S分成M个子集,求子集的极差的平方和最小是多少…… 首先我们先将这N个数排序,容易想到每个自己都对应着这个有序数组中的一段……而不会是互相穿插着= =因为交换一下明 ...
- matrix_2015_1 138 - ZOJ Monthly, January 2015
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3844 第一个,n个数,每次操作最大数和最小数都变成他们的差值,最后n个数相 ...
- 大漠推荐的教程:创建你自己的AngularJS -- 第一部分 Scopes
创建你自己的AngularJS -- 第一部分 Scopes http://www.html-js.com/article/1863
- C# 序列化 Serialize 的应用
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- Long型070000L前面0去掉比较大小,token,mysql innodb,properties,switch匹配空字符串对象
public class TestJava { //定义获取资源文件 private static final ResourceBundle bundle = initBundle(); privat ...
- HDU Destroy Transportation system(有上下界的可行流)
前几天正看着网络流,也正研究着一个有上下界的网络流的问题,查看了很多博客,觉得下面这篇概括的还是相当精确的: http://blog.csdn.net/leolin_/article/details/ ...
- jquery ajax post 传递数组 ,多checkbox 取值
jquery ajax post 传递数组 ,多checkbox 取值 http://w8700569.iteye.com/blog/1954396 使用$.each(function(){});可以 ...
- POJ 1477
#include <iostream> #define MAXN 100 using namespace std; int _[MAXN]; int main() { //freopen( ...